Download Print this page
Arexx YETI Manual

Arexx YETI Manual

Walking robot

Advertisement

Quick Links

Walking robot
YETI
Manual: Model YT-3000
©
AREXX - THE NETHERLANDS V01082006
-  -

Advertisement

loading
Need help?

Need help?

Do you have a question about the YETI and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for Arexx YETI

  • Page 1 Walking robot YETI Manual: Model YT-3000 © AREXX - THE NETHERLANDS V01082006 -  -...
  • Page 2 Calibration- and test program Akku ADC values NOTICE! YETI ROBOT KIT is a trademarks of AREXX, The Netherlands and JAMA, Taiwan. AREXX and JAMA are registered trademarks All rights reserved. Reprinting any of this instruction manual without our permission is prohibited.
  • Page 3 . PRODUCT DESCRIPTION YETI .. What kind of robot is the YETI? YETI is a walking robot man, named after “the abominable snowman”, a hairy giant, who is supposed to live in the Himalayan Mountains. Just like the legendary giant, our robot is walking on two big feet.
  • Page 4 This PWM control allows the servomotor to make a very accurate rotation step. YETI has a front servo and a bottom servo. The servo at the front puls moves the feet upwards. The forward and backward move is made by the bottom servo.
  • Page 5 TV-control set. • Let YETI play melodies or make sounds • Switch off and on his LED-eyes. • Modify the YETI hardware and YETI’s face, for example by a display or a LED mouth. - 5 -...
  • Page 6 100 %. Activate the main YETI switch at the bottom of the robot. A few seconds later YETI will stretch his legs and proceed by giving a demonstration of his abilities, following a standard example program in the processor’s memory.
  • Page 7 YETI memory. In fact, the supplied COM-port adapter contains a RS232-infrared transceiver, which must be connected to the COM-port of your PC. The YETI robot contains a built-in infrared transceiver, being located behind both small openings at the robot’s back.
  • Page 8 Flash program at the computer. • Select the YETI program in the Flash program. • Allow the holes in the YETI’s back to be directed to the upper side of the COM-port adapter. • Switch off YETI’s main switch. •...
  • Page 9 Add-on kits You may easily add extra (but non included) modules to the YETI robot, to allow YETI to do much more. How about adding an ultrasonic transceiver, allowing YETI to sense the distance to obstacles and avoid these objects while walking around? You also may add a display to YETI’s body to show output messages...
  • Page 10 The communication between YETI and PC Pressing the “Programming”-Button in the Flash Program will activate the Flash program to contact the YETI robot for 10 seconds. If YETI responds, the YETI program will be transferred. YETI however will only respond to the PC if the contact is tried within a 3 seconds period fol- lowing YETI’s switch on.
  • Page 11 4.. The basics of walking YETI is balancing on one foot and is moving the opposite foot. To do so YETI pulls the outer side of the “balancing” foot upwards and simulta- neously presses the outer side of its “moving” foot downwards. These movements will bend YETI’s body over to the “balancing”...
  • Page 12 If YETI raises his right foot a little bit too much, the left foot will bend YETI’s body over the equilibrium point, causing the robot to fall down to the right side.
  • Page 13 4.. YETI main PCB YETI’s main printed circuit board (PCB) is equipped with an Atmega8L microcontroller chip. The microcontroller is connected to a big, round beeper and to both red LED’s at the front side. A great number of other microcontroller pin connections, e.g.
  • Page 14 Pin 17 PD0(RXD) Pin 18 PD1(TXD) Pin 19 VCC Pin 20 GND 4.4. YETI experimental extension set Summary The experimental extension set has been designed to set up your own electronic designs and connect the experimental modules to the micro- controller.
  • Page 15 4.5. Flat cable connections The designers reserved four of twenty flat cable connections. Pin 19 is used for VCC and pin 7, 8 and 20 for GND. All remaining flat cable connections are connected to a dedicated micro- controller pin. The pin numbers are listed with the assigned microcon- troller pin functions. Microcontroller pins may be used in several modes, depending on the programming mode.
  • Page 16 - 6 -...
  • Page 17 The IC-pins can be bend and aligned very simple on a hard flat surface like a table! Just put all pins inline on the table and bend the IC carefully to the correct alignment. Technical questions see; www.arexx.com --> Forum www.roboternetz.de --> Forum - 7 -...
  • Page 18 • Be careful about sharp edges of parts. * Do not mix old and new or recharchable and non rechargeble batteries. • Take out the batteries when you do not use the YETI for more than a week • The specification, shape and size of the product are be subject to change without prior notice. 5.. Necessary tools...
  • Page 19 5.4. Assembly main PCB IMPORTANT see 5.5 (Diagram) and 5.6 (Pictures) YETI parts list Name Pcs. PCB Main PCB ATmega8-l (polarity!) SFH50 IR-receiver-IC (polarity!) 0K / 0.5W / 5% (Brn, blk, or, gld) 0K / 0.5W / % (Brn, red, blk, or, brn) 00K / 0.5W / %...
  • Page 20 6.3. Diagram YETI - 0 -...
  • Page 21 5.6. Hauptplatine IC Marking Resistor & Coil Marking with color stripes. LED & IR-LED The side with the flat marking is the Cathode. The long leg is the e Anode. Condensator No polarity ELCO ( Elektrolyt Condensator) The long leg is the The white line marking on the housing is the  ...
  • Page 22 5.7. Assembling the RS3-Infrared-Transceiver • IC1: Initially insert the 8-pole socket. The polarity mark of the (slightly asymmetrical) socket must correspond with the mark in the accompanying symbol on the PC. • D1, D2, D3: 1N4148, pay attention to polarity! Read the imprints of the parts and take care not to interchange with ZPD5.1 or BZX55-C5V1! •...
  • Page 23 5.8. Diagram RS-3 IR-Transceiver - 3 -...
  • Page 24 5.9. Layout RS3-Infraread-Transceiver PCB Fig. 5..: Layout RS3- Infrared-Transceiver Finally check the board for short circuits or polarity errors. Check the soldering quality intensively and re-solder bad contacts. - 4 -...
  • Page 25 5.0. Info assembled USB-Infrared-Transceiver The USB-IR-Transceiver is also available already assembled. Fig 5..: USB Infrared-Transceiver Fig. 5.3.: Component layout USB-Infrared-Transceiver Fig. 5.4.: Bottom layout USB-Infrared-Transceiver - 5 -...
  • Page 26 6. PARTS LIST MECHANICS Collar Colar Collar Flathead screw Nut M2 Nut M3 small screw M3x8mm O 8 pcs. O 10 pcs. O 8 pcs. O 4 pcs. O 10 pcs. O 4 pcs. Servo Screw-rod Spacer Rivet Screw connector O 4 pcs.
  • Page 27 Foot Feet joint panel 5 x 80mm O 2 pcs. O 2 pcs. O 2 pcs. Front leg Rear leg Servo arm pushrod O 2 pcs. O 2 pcs. O 2 pcs. Top panel Top cover panel O 1 pc. O 1 pc.
  • Page 28 YETI main PCB Velgro-tape Bottom panel (assembled) O 2 pcs. Male O 2 pcs. Female Pre-assembled O 1 pc. IR/Transceiver PCB RS-232 Cable (assembled) O 1 pc. O 1 pc. O 1 pc. 7.. Important electronic parts Pre assembled with cableset...
  • Page 29 7. INSTRUCTIONS MECHANICAL ASSEMBLY Installing the head servo: For this assembly you need;  pc. Head panel  pc. Servo 4 pcs. Flathead screw 4 pcs. Nut M3 Servo screw  pc. Servo arm mm holes Servo Arm  pc. Servo arm screw with mm holes Servo...
  • Page 30 Installing the bottom servo: For this assembly you need;  pc. Bottom panel  pc. Servo 4 pcs. Flathead screw 4 pcs. Nut M3  pc. Servo arm  pc. Servo arm screw Servo Arm Servo arm screw with mm holes Servo M3 Nut...
  • Page 31  pcs. Battery holder 4 pcs. AA accu  pcs. Velgro-tape male  pcs. Velgro-tape female IMPORTANT! Do not forget to insert the batteries before you close the YETI back panel! Installing Velgro-tape Battery holder (normally Pre-installed) DC connector Switch Assemble the bottom plate as descriped in the drawings.
  • Page 32 Assembly YETI head:  pc. Assembled bottom panel For this final assembly you need;  pc. Assembled head panel  pc. Assembled main PCB  pc. Back panel Main PCB IMPORTANT! FIRST, before closing the head, you have to install all the wiring and...
  • Page 33 Installing the wires: For the wire assembly you need;  pc. Assembled bottom panel  pc. Assembled head panel  pc. Assembled main PCB Assembled cable set with:  pc. Wire back  pc. Wire blue  pc. Wire yellow  pc.
  • Page 34 Cable connections main PCB: JP & JP Servo Connections 1. White 2. Red 3. Black . = White JP5 = Cable set JP3 = Accu set  JP = Bottom servo JP4 = Accu set  JP = Front servo - 34 -...
  • Page 35 Mechanical end assembly YETI head: For this final head assembly you need;  pc. Assembled YETI head  pc. Top panel  pc. Top cover panel 4 pcs. Thread end rod, short 4 pcs. M Nut 4 pcs. Spacer 4 pcs. Ballhead nut...
  • Page 36 Legs and Feet assembly:  pcs. Foot For the legs and feet assembly you need;  pcs. Front leg  pcs. Back leg  pcs. Feet joint shaft  pcs. Rivet  pcs. Collar, small Assemble the feet and legs exacty as shown in the drawings Feet joint shaft Frontleg...
  • Page 37 YETI Leg Assembly part I: For part I of the leg assembly you need;  pc. Assembled Chassis  pc. Assembled legs right  pc. Assembled legs left  pcs. Rod 5 x 80mm 4 pcs. Collar big Assemble the legs as shown in the drawings...
  • Page 38 YETI Leg Assembly part II:  pc. Assembled Chassis For part II of the leg assembly you need; 4 pcs. Ball-end screw 4 pcs. Ball adjuster  pcs. Thread end rod long 4 pcs. Nut M Assemble the servo rods exactly as...
  • Page 39 Final assembly YETI legs: For the final leg assembly you need;  pc. Assembled Chassis  pcs. Nut M  pcs. Servo arm pushrod  pcs. Screw-rod connector Assemble the servo to the rod as shown on the drawings M Nut...
  • Page 40 YOUR YETI IS READY ! - 40 -...
  • Page 41 8. CHARGING THE YETI BATTERIES The YETI power voltage is 4.8 Volt supplied by 4 NiCd (1,2V) batteries. IMPORTANT: The batteries are not protected by a fuse or series resistor! Be sure that you are using a good quality battery charger. Best is a...
  • Page 42 A common basic knowledge will help you in asking questions, reading documents from the Internet user clubs and asking experts for help or information. Of course you will be able to load a self-written program into the YETI robot, but how? •...
  • Page 43 9.. Step  Writing a “C”-program Normally you will be designing and writing a YETI program for a de- dicated programming language. For this purpose we choose a very popular programming language called “C”. You will need a special word processor (an editor) to write the YETI program.
  • Page 44 9.3. Step  Compiling a “C”-program A self-designed YETI program, also being called a “source” or a “source program”, basically is a simple text document, example given the file: “test.c”. Executing a so called “compiler”, which is called GCC.exe in our system, will transform our source code “test.c” into an object file, called “test.o”. An object file is a readable text file, containing a set of...
  • Page 45 PN2-menu or activating a special key in the PN2-keyboard. A one-click-solution! Imagine a great number of jobs, being processed in a background queue and resulting in a HEX-file, to be loaded in the YETI-processor. The PN2-editor is a universal programming system, designed to be used for a great number of different compiler and linker systems, which results in a complex interface between the PN2-program and the compiler- / linker-programs.
  • Page 46 Some enthousiast programmers developed a dedicated free software package, named WINAVR (pronounced as whenever), especially de- signed to program the Atmega processor types, which are also being used in the YETI robot. The WINAVR package contains the compiler program AVR-GCC, the linker, PN2 and a great number of microprocessor files. The WINAVR software is delivered as a single installation file, which may be found on the CD, included in the robot set.
  • Page 47 Flash program. On reception of a Flash signal the YETI starts reception of the program and writes the program into its memory. If no signal is found, the YETI will proceed by processing the program, which previously had been loaded in the memory.
  • Page 48 0. SOFTWARE INSTALLATION AND INITIAL STEPS Insert the YETI CD. When all is OK it will start automatically, otherwise open it with windows explorer. After the language selection you will find all the programs you need for the YETI under the software menu. Before you can work with them you have to install the program on your hard drive first. To install programs on your hard drive, you need administrator rights. When you are not logged in as administrator, log out and log on again as administrator.
  • Page 49 Now this screen will appear: Click OK [I Agree] This screen appears: Click continue [Next] - 49 -...
  • Page 50 This screen appears: Click accept [Agree] This screen appears: Click Continue [Next] - 50 -...
  • Page 51 This screen appears: Nun das Fenster ‘Programmers Notepad 2’ schließen. Click Install [install] This screen appears: Wait ..: - 5 -...
  • Page 52 This screen appears: Click safe [safe] This screen appears: Close this screen - 5 -...
  • Page 53 On the DESKTOP the ‘programmers notepad 2’ Symbol appears: The program editor and the compiler are installed now. 0..3. Copying the example programs from CD to the harddisk. Copy the folder ‘YETI_src’ from the YETI CD to the hard disk (put it in a folder something like this: ‘C:\YETI_src’). 10.1.4. Compiling a ‘C’ file Just for try we will open the file ’C:\YETI_src\FirstTry\test.c’ : Open Programmers Notepad 2’ (click the notepad symbol on your desktop...
  • Page 54 Select: Open Project(s)... Find the data: C:\YETI_scr\Firsttry\YETI.pnproj This screen appears: Click Open - 54 -...
  • Page 55 This screen appears: Doubleclick ’test.c’: - 55 -...
  • Page 56 This screen appears: Compile Program: Wait till... …Errors: ’none’ and ’Process Exit Code: 0’ will show. Now the compiled data is ready and a file ’test.hex’ is generated. - 56 -...
  • Page 57 What happened? From the file test.c (and YETI.c) a new file test.hex was generated. This file contains the in machine code converted program. This machine code program can be loaded (flashed) in YETI’s memory. This program does not have a function. Later on, for trial, we will upload it in the YETI memory with the Flash tool. How did it work? The menu input file calls the batch file Test-all.bat (this batch file contains a list with command lines which are executed line after line).
  • Page 58 When you compile a program, some extra data is generated. This data is only necessary during the conversion, after that it is useless. These data files can be removed with the clean tool. With ’File -> Open’ you can see the generated data. We have marked the new data. You can see new data e.g. ’test.hex’ With ’Tools ->...
  • Page 59 0.. LINUX For the software installation you need root rights. If you do not have these, log out and log in again as root or open a shell and demand the root with ‘su’. 0.. Flash-Tool Start the program from the CD software menu and copy the two flash tools “yetiflash” and “yeticon” from the folder “/linux/tools” into the folder “usr/local/ bin”. After this, you must allow the execution of the program with “chmod a+x /usr/local/bin yeticon yetiflash”...
  • Page 60 0.. Compiler To install the Gnu-Compilers for AVR-Processors, insert the YETI CD-ROM and choose the following from the folder “/Linux/Compiler/” : . avr-binutils-..rpm . avr-gcc-..rpm 3. avr-libc-..rpm The installation is quite simple! Just give the command: rpm -i <paket>.rpm in your root directory.
  • Page 61 After loading the program, YETI will have to be switched OFF and ON again in order to start the program. This sequence will execute the loaded program and the green LED will lit up brightly.
  • Page 62 “t” Timeout. The line-of-sight between YETI and the IR-Transceiver has been interrupted completely. “v” Verify Error. YETI wrote invalid data into its Flash-memory. This is a most unusual situation, indicating the non-volatile programming memory (Flash-EPROM) has reached the end of its lifetime, according to specifications after approximately 10.000 programming cycles. Error correction can be retried ten times. In case of failure the flash-procedure will be aborted.
  • Page 63 Communication --> Hyperterminal. If the program is not available, you can install it from the Windows-CD. After starting the Hyperterminal program you will be asked to define a name for the connection. You may choose YETI or any other symbol. In the next window you choose “connect by” and the COM-interface by which the transceiver has been connected in the previous step.
  • Page 64 Now a message will apear “NEW HARWARE WAS FOUND”; AREXX ASURO/YETI USB-IR-TRANSCEIVER Now you can install the USB driver from the YETI CD. When the driver is not detected automatically, you can select it manually from CD\windows\USB Driver (Administrator rights are necessary for this operation). When the driver is installed you can approach the USB Transceiver like a normal serial port.
  • Page 65 If no symbols or wrong symbols are being displayed you may carefully turn the trimmer between its extreme left and right position. When it does not work 100% OK, please visit www.arexx.com --> Forum or www.roboternetz.de --> Forum. - 65 -...
  • Page 66 Ca. 3 seconds later a series of beeps may be heard. Now press any key at the PC terminal within 1 second. The keys listed in table 1 are now available to calibrate the YETI. Start by pressing [-]. Both servos will move to their electrical zero position.
  • Page 67 Pressing the [ENTER] will close the calibration procedure. At restart, theYeti will start by returning to the calibrated mechanical zero position. IMPORTANT! In YETI’s standard supplied programs you will find a function ‘vCalibrateServos()’ to do the calibration process with. SEE ALSO APPENDIX J for more information YETI calibration keys ‘Front’ ‘Front’ ‘ ‘Front’ Servomotor Servomotor...
  • Page 68 USB-adapter and YETI’s rear head. • Switch YETI on and wait for a series of beeps. The YETI will now return the servos to zero position. • Now press any key at the PC terminal within 3 seconds. YETI beeps once and it will stay in the calibration function now.
  • Page 69 YETI’s brains We will start a short overview in a summary. The main printed circuit board in the YETI contains a miniature computer, usually named ‘microcontroller’. The microcontroller is an integrated circuit (abbreviated IC) and you may easily identify this chip as a small, black 28-legged box. Electric wiring connects the microcontroller directly to the red LED-eyes, to the loudspeaker, to the infrared communication system and to the servomotors, controlling YETI’s movements.
  • Page 70 Servo-motors We provide the YETI with two special motors, housed in small compartments and containing a few cog wheels and some control electronics. The output axle is provided with a single cog wheel. Electronic engineers call these devices servos. The internal cog wheels make up a gear-system.
  • Page 71 ‘programmer’. Using the ‘programmer’ normally implies providing the YETI with some connector and cabling system and connecting the YETI with the ‘pro- grammer’ to load a new program or program version. However a few clever engineers at DLR (www.dlr.de) were able to develop and provide us with a smart programming tool.
  • Page 72 The area is protected against erasure and modifications and you will feel safe at programming the system. Developing programs How do I start developing a program? In fact we will use the following method: You will ‘write’ a YETI-program in a text editor, using a special ‘langu- age’. Having completed the text file you will translate the text file to another file containing instructions, which may be understood by the microcontroller system and is called a ‘hex’-file. And finally we will use the previously described ‘Flash’-program to transfer the ‘hex’-file to the YETI.
  • Page 73 We can choose several languages for programming, but the most po- pular language for writing microprocessor software is a language with a short name: ‘C’. This is the language we choose to write the YETI’s software. - 73 -...
  • Page 74 The translator program is just an ordinary program, translating one file into another. In information technology this kind of program is named ‘Compiler’. So we will need a ‘C’-compiler to create YETI-programs and consequently we choose the program ‘gcc.exe’. The compiler will need an input file with a name ex- tension dot and a letter ‘c’. For this reason the compiler will be unable to translate a source file named ‘test.txt’, but it will process a file ‘test.c’...
  • Page 75 Is it difficult to write a YETI ‘C’ –program? Well the answer may be negative or positive as well. It is rather easy, because a YETI-control program is rather simple. However we can also create quite complex programs for the YETI. If you start working with ‘C’ things may seem to be magic, but soon you will learn the magic is quite simple.
  • Page 76 Basic structure for a ‘C’-program Basically a ‘C’-program minimally requires the following structure: int main(void){ return 0; ‘int’ is the type for the main function ‘main’ is the name for the main function ‘void’ indicating ‘no entry’ ‘return 0’ is the return value for the ‘main’-function. # As a general rule each ‘C’-instruction has to be terminated by a semi- colon, except a block terminator (terminating bracket).
  • Page 77 # The following program source will generate a compiler error message, if we write ‘Main’ with a capital letter. The ‘C’-language does not allow us to write the keyword ‘main’ to be written with a capital letter. int Main(void){ return 0; # On the other hand the compiler allows us to concatenate all instructi- ons in one single line, but this will not improve the readability: int main(void){return 0;}...
  • Page 78 ‘C’-language already. For this reason we will restrict our descriptions to functions, which will be needed for the YETI. Having understood the basics we can start programming now. We will proceed by explaining the sample programs included in the kit’s CD.
  • Page 79 IMPORTANT HINT The letter v at the beginning of YETI function names is a valuable programmer’s hint, indicating a function, which will not be retur- ning a value! YETI will switch on its right ‘eye’ #This program will swich on YETI’s right ‘eye’...
  • Page 80 Activating YETI’s right eye. vFrontLEDs(OFF); Switches off both eyes. vFrontLEDs(BOTH); Switches on both eyes Blinking YETI’s right eye LED 5 times #This program will activate YETI’s right eye LED 5 times at one second intervals #include “YETI.h” //load definitions and //functions int main(void){ //main function entry int i;...
  • Page 81 for(…){ The program module enclosed in ‘for’-brackets ‘{‘ respectively ‘}’ will be called a ‘loop’. int i; This statement defines a Variable with a free chosen name ‘i’. for(i=0 ;i<5 ;i++){ Initiate variable ‘i’ with value 0 and repeat all program coding between the opening bracket ‘{‘ and the corresponding closing bracket ‘}’, as long as variable ‘i’...
  • Page 82 The function will accept a number of milliseconds (1/1000th second) and the above calling sequence will generate a waiting cycle of half a second. YETI’s acoustic signals #The following program will generate a sample of YETI’s acoustic signals. #include “YETI.h” //load definitions and functions...
  • Page 83 //end of the main function #include “yetimove.c” This include-line will insert the YETI servo functions. vMoveBody(6,0); Move YETI’s feet servomotor 16 steps to the left, reserving 10 milli- seconds for each step. vMoveBody(-6,0); Move YETI’s feet servomotor 16 steps to the right, reserving 10 milliseconds for each step.
  • Page 84 Reset the feet-servo for the YETI body to an inital position, resulting in an upright body position for the robot. A similar function ‘vMoveLegs()’ will activate YETI’s legs forward and/or backward. YETI starts walking #This program will activate YETI to walk 3 steps forward.
  • Page 85 4. YETI EXTENSION SETS General overview All extension sets will be connected to YETI’s main PCB using a single 20-pole flat cable. The flat cable will also provide supply power to the sets and the I2C datatransfer to and from the extension sets. 4.. YETI Experimental set YT-EXP The experimental extension set has been designed to set up your own electronic designs and connect the experimental modules to the microcontroller.
  • Page 86 INSTALLING THE UPGRADE KITS Ultrasound PCB Flatcable Top cover Main PCB (inside cover) Ultrasound PCB Accu Set SERVO Installing Display PCB Installing Ultrasound PCB Installing experiment PCB - 86 -...
  • Page 87 The display module also contains a 24-pin I2C driver chip for symbol display control. The YETI microcontroller controls the I2C driver chip. I2C is a standard communication protocol between electronic components, using only two signal wires SCL (serial clock) and SDA (serial data). We will need just one pair of a total of 20 wires provided by the flat cable.
  • Page 88 Additionally each display provides a common supply pin for the LED’s. Four segments each share a common supply pin and both supply pins 3 and 14 are interconnected internally. In order to provide control signals for 4 display units we normally would need at least 8+2=10 signal lines for each symbol, requiring a 40-pin IC.
  • Page 89 4.4. Parts list YETI Display Kit YT-DSP PCB-DSP YETI DISPLAY PCB 330R (Or, or, brn, gld) 330R (Or, or, brn, gld) (Brn, grey, or, gld) 2,7nF (272) 100nF (104) BC547B/C (polarity!) BC547B/C (polarity!) 8-segment display common anode (polarity!) 8-segment display common anode...
  • Page 90 - 90 -...
  • Page 91 4.5. Diagram Display set - 9 -...
  • Page 92 The delay between transmitted and received impulses allows us to calculate the distance between transmitter/receiver and reflection area. The ultrasonic module converts the delay period into an electronic voltage level and a flat cable connects the delay signal to an A/D-con- verter in the YETI processor, monitoring the voltage level. A software module controls the voltage monitoring and all resulting robotic actions. We did reserve sufficient room in YETI’s...
  • Page 93 4.7. Hardware description The ultrasonic module consists of 5 parts: Transmitter Receiver Receiver amplifier Fixed voltage reference Variable voltage reference The microcontroller generates the ultrasonic signal wave to be trans- mitted by the transmitter loudspeaker (TX). The receiver microphone (RX) receives reflected sound waves, which must be amplified in the receiver amplifier. Resistor R10 allows you to manually control the am- plification factor. The fixed voltage reference, which is exactly adjusted to 50 % of the supply voltage, will be used for the transmitter and for generating the variable voltage reference.
  • Page 94 Using the decreasing comparision level will result in high vali- dation signal levels for fast response reflections and gradually lower validation signal levels for retarded response reflections. Of course the ultrasonic receiver system is extremely sensitive for any reflected signals, especially for signals from nearby objects in the transmitter’s vicinity. In order to prevent reflections from the YETI’s head surrounding the ul- trasonic transmitter and receiver, we will completely fill the robot’s head with cotton wool, including the volume between the band cable and the back of the head. See figure 1. - 94 -...
  • Page 95 4.8. Preparation YETI Ultrasonic Set The assembled ultrasonic PCB is mounted in the YETI head. However, in this location the functioning of this ultrasonic set will be influenced Undesired reflections of the ultrasonic sound inside the YETI head. Undesired reflections of the ultrasonic sound by the outside of YETI itself. Below you find two important ultrasonic signals: On this oscilloscope image you see two signals, measured on CON1- 13 and CON1-15. The first signal blue (CON1-13) briefly shows 5 pulses of approx. 4.5 Volt. The signal comes from the microprocessor directly and goes to the ultrasonic PCB.
  • Page 96 We mark the reflected signal at a distance of 60 cm. All strongly reflected signals are located above the reference line as a result of undesired direct reflections of YETI. These signals therefore cause an invalid measurement. - 96 -...
  • Page 97 As you can see in our description the US receiver reacts very sensitive on all kind of reflected signals. This means it also reacts on false reflections inside YETI’s head. In order to avoid invalid measurements, we put cotton wool inside the YETI head. This way the inside of the YETI head does no longer cause undesired reflections. (see. fig.1)! Step . Yeti’s head, completely filled with cotton wool.
  • Page 98 The image below shows this new situation: It shows perfectly that there are clearly less undesired reflections now. Reflections which are stronger than the reference signal cannot be seen as valid measurements, they are error measuments. 60 cm Step . Filtering the outside reflections - 98 -...
  • Page 99 60 cm On the above image all reflected signals stay under the reference line. Now you can measure distances accurately. The time between 5 trans- mitted pulses and the reflected signal is calculated by the microproces- sor and translated into an actual distance. This distance can be shown on a display. It is very important that during the preparation of the ultrasonic function you take care that undesired reflections stay under the reference line.
  • Page 100 4.9. Parts list YETI Ultrasonic set PCB-UTS Ultrasonic PCB (Brn, blk, or, gld) (Brn, blk, or, gld) (Brn, blk, red, gld) (Brn, blk, or, gld) 100R (Brn, blk, brn, gld) 470K (Ylw, vio, ylw, gld) (Brn, blk, or, gld) (Brn, blk, red, gld)
  • Page 101 4.0. Diagram Ultrasonic set - 0 -...
  • Page 102 - 0 -...
  • Page 103 Conclusion We hope our robots ASURO and YETI may have helped you by introducing you into the world of robotics. We believe the next technological revolution will be a robotics revolution. Robots will contribute to economic growth as well and in order to support...
  • Page 104 APPENDIX - 04 -...
  • Page 105 A. OVERVIEW OF YETI FUNCTIONS Basic functions. The following overview describes YETI’s basic functions, to be found in file ‘YETI.c’. vInitYeti() Initialize all YETI modules. vFrontLEDs(x) x = ON, LEFT, RIGHT, OFF Activate the YETI’s eye-LED’s. Example: vFrontLEDs(LEFT); vServoToPosition(x) x = 0-65635 Set the front (body) servomotor into position x.
  • Page 106 The following functions are compound functions, containing an assem- bly of one or more basic functions. Compound functions will be found in the file ‘yetimove.c’. vStandUpright() Will make YETI to stand up in an upright position. Both ‘body’- and ‘legs’-servosystems will be reset to a zero position. - 06 -...
  • Page 107 = YETI’s body is inclining to the left or right position, from -58 (corres- ponding to an extreme right inclination) up to and including -58 (corres- ponding to an extreme left inclination) y = execution speed in milliseconds / step, 0 – 65635. This function will round up delay durations to tens of milliseconds, e.g.
  • Page 108 = ‘true’ respectivily ‘false’, true = moving forward, false = moving forward. Example: vTurnLeftXSteps(,false); YETI will turn around backward, moving backward 2 steps in a left turn. vTurnRightXSteps(x,y) x = number of steps, 0-255 y = ‘true’ respectivily ‘false’, true = moving forward, false = moving forward.
  • Page 109 B. DIAGRAM YETI - 09 -...
  • Page 110 C. DIAGRAM DISPLAY MODULE - 0 -...
  • Page 111 D. DIAGRAM ULTRASONIC MODULE -  -...
  • Page 112 E. DIAGRAM RS-3 IR-TRANSCEIVER -  -...
  • Page 113 F. DIAGRAM USB IR-TRANSCEIVER - 3 -...
  • Page 114 G. FLAT CABLE CONNECTIONS Pin 1 SCL Serial Clock (for I2C communication) Pin 2 SDA Serial Data (voor I2C communication) Pin 3 PC3(ADC3) Digital input/output or analog monitor input Pin 4 PC2(ADC2) Digital input/output or analog monitor input Pin 5 PC1(ADC1) Digital input/output or analog monitor input Pin 6 PC0(ADC0) Digital input/output or analog monitor input...
  • Page 115 H. ERROR TRACING H.. GENERAL Check all parts for correct polarisation and correct value. Check soldering connections for short circuits and bad soldering. Has a soldering pad been disrupted ? If all checks have been made without results, the bad part has to be traced with the help of the schematic (see Appendix) and an adequate measurement device (multimeter or oscilloscope).
  • Page 116 PC and ASURO is malfunctioning again and again, re-adjust trimmer TR1 in the transceiver. H.4.3. Things still do not work well Check polarity of C8. 220µF/ at least 10V If transfer of data between PC and YETI is malfunctioning again and again, re-adjust trimmer TR1 in the transceiver. - 6 -...
  • Page 117 I. INSTALLING THE UPGRADE KITS Ultrasound PCB Flatcable Top cover Main PCB (inside cover) Ultrasound PCB Accu Set SERVO Installing Display PCB Installing Ultrasound PCB Installing experiment PCB - 7 -...
  • Page 118 J. CALIBRATION AND TEST SOFTWARE We supply the YETI processor with a standard selftest and calibration program called ‘test.hex’. The Yeti ‘test.hex’ program contains: 1. a calibration mode 2. a walking mode SELFTEST PROCEDURE Switch Yeti on. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -...
  • Page 119 - both servos go to their (almost) centre position - a series of beeps is heard - the program now waits 3 seconds for any hyperterminal key to be pressed. If so, YETI goes into calibaration mode. With the first hyperterminal key being pressed, YETI lets a short beep being heard once.
  • Page 120 YETI’S WALKING MODE PROGRAM STARTS - a single beep is heard - YETI’s left LED turns on - YETI leans to the LEFT and puts his RIGHT foot forward making 3 right/left steps - YETI turns left, 4 steps - YETI moves 3 steps backwards...
  • Page 121 K. ACCU ADC VALUES -  -...

This manual is also suitable for:

Yt-3000Yt-chs4b