Reference / Paper · 1977
Mike the Microtron — InterfaceAge Magazine Article (April 1977)
- robot
- microtron
- hobby computing
- interfaceage
Reference / Paper · 1977
a Pes Cae ae ee ———————EEEE————————— ™ iNTenTaL MICROCOMPUTING FOR HOME AND SMALL BUSINESS VOL. 2, ISSUE 5, APRIL 1977 $1.50 sg ase ea “Mike” — Computer Controlled Robot Robots as Household Pets Digital Group : System ——————————— ii EXMON 68 Extended Monitor System => ROBOTS. — OUR FUTURE FRIENDS \ '. <3 As long as | can remember | have wanted to build a robot. Ree sye Se how the robot should move around. | discarded the idea of legs. Wheels seemed to be my best alterna- tive. | decided up- on a triangle with one steerable wheel. | don’t know from where this desire came, but it has al- ways been with me. APRIL 1977 18 INTERFACE AGE by Tod Loofbourrow Imagine the shock to some innocent passerby as he turns the corner in his morning jog and comes face-to-face with a speeding metal object. The object in question is Microtron, a triangular shaped robot that | built last summer when | was fourteen.’ It is constructed of 1/8 x 1” angle aluminum and measures 15” in height and 23” per side.“ Power for the robot is provided by a standard twelve volt car battery, channeled to three motorized wheels. As long as | can remember | have wanted to build a robot. | don’t know from where this desire came, but it has always been with me. | believe my first exposure to robots was at Montreal’s Expo ’67 where | saw a display of robots. Ever since then | have been fascinated by the idea of building such a device. Several times before | have tried and failed, the best of my efforts producing only a small empty metal box. Then last summer | came across a book about building a robot. Using the book as a guideline, | developed a mental picture of how | wanted the robot to look and then, | began to build. My first decision to consider was how the robot should move around. | immediately discarded the idea of legs as being far too complicated, and not very fast. For a while thereafter, | was at a loss as to what to use. Wheels seemed to be my best alternative. | considered using electric window motors from automobiles and commercial wheels. The cost, however, would be high. | then came across a completely built motorized wheel in an electronics catalog.* Each reversible wheel was 412” in diameter and 1” wide, and ran on 6 or 12 VDC. Individually, the wheels could carry a load’ of 200 Ibs at walking speed on smooth, level surfaces. Stalled, these wheels had a pulling force of 20 Ibs each. The current drain of ane wheel was 2 amps with no load, and 8 amps stalled. These wheels appeared to be ideally suited for my concept of the robot, and so | designed it around them. Requiring 12 volts to run the wheels at the speci- fications stated, | began to design a frame which could contain a 12 volt car battery. After trying many designs, | finally settled on a triangle both for stability and strength. A triangle also provided a good base for anything | might add, and it needed one less wheel than a rectangle or a square. The front wheel was to be the only steerable wheel, rotated by a separate motor, while the back two ompu Controlled Robot Member of the Amateur Computer Group of New Jersey wheels were locked in place. A motor was, there- fore, required to turn the front wheel. It happened that the same company that advertised the motorized wheels also had geared-down reversible motors. | ordered one of these at the same time as | ordered the motorized wheels. When these materials arrived, | was able to con- Struct a full-sized diagram of the finished frame and lay the parts out on it. | found that it had to be some 20” long. | immediately set to work build- ing it, and in no time at all had the three wheels mounted in a sturdy triangular frame. It was then that | noticed that the wheels were not firmly anchored to the frame and could wobble. The reason for this problem was that the shafts coming up from the wheels were each set in a circular disk, With the new microprocessors on the market, an inexpensive and more versatile alternative to hard- ware was available. 1—See photo #1 2—See photo #2 A—See Diagram A APRIL 1977 so that the wheels could rotate. The holes in the disks were slightly larger than the outside diameter of the shafts, giving a little play to the shafts. | had mounted the triangular frame on the out- sides of the disks so that the wheels could rotate, hence the shafts wobbled too freely. The only solution | could see to this roadblock was to build a second triangle above the first and mount small wooden triangles in its corners. The shafts could then pass through holes in the wood. | built this second triangle and attached it rigidly to the first with pieces of angle aluminum. The wheels were then firmly mounted and, although they could still rotate, they were prevented from wobbling. The two triangles were separated from each other by five inches, and the entire framework was solidly bolted together. This new frame provided good support for anything | might add and was much Sturdier than it was before the second triangle was added. With the wobbling problem sojved, | was able to mount my steering motor on the frame. Unfor- tunately, | ran into another problem. The steering motor, although geared down, was far too fast. It rotated the front wheel much faster than was neces- sary. This problem was easily solved by mounting a large gear on the shaft of the front wheel and a INTERFACE AGE 19 aa —— small one on the motor shaft.* The ideal gear ratio appeared to be ten to one. In other words, the larger gear had ten times as many prongs as the small one. When | first got the gears the hole in the larger one was only 5/8 of an inch in diameter. This was not a large enough opening for the 3/4” wide shaft to pass through. |, therefore, had to have the hole drilled bigger in a machine shop before | could mount it on the shaft. Once the hole was enlarged, | was able to mount the gear and hook up the steering motorA Now that the wheels and the steering motor were locked in place in the frame, | needed some way to contain the battery that powered them. My next step was, consequently, to design a battery cage. The first thing | did was lay a cross piece across the lower triangle of the frame 11” from the back. | bolted it in place. Second, | constructed a rectangle out of angle aluminum 12” long and 7” wide. The two shorter sides were turned so that the angle faced outward. The longer sides faced inward so that the battery could rest on them. All of it was held together by four 9” lengths of 3/8” screw rod, bolted in the corners of the rectangle. This screw rod was then bolted to the back of the frame and to the cross piece. It continued to extend above the top of the battery where small pieces of angle aluminum were bolted. The pieces of aluminum were to keep the battery from tipping. | then positioned the entire assembly so that it rode 2” above the ground. Once the battery cage was finished the main ribwork was complete and | could move on to the electronics of the robot. As | built the framework of the robot, | had, at the same time, been building its circuitry. At first three main circuits were required to allow the robot to move and turn. The first of these circuits was a power supply.® This circuit took in +12 volts and by means of a regulator put out +5 volts. The +5 volts could be used for all other circuitry and for the computer which was to be added later. In addition, the power supply contained a series of fuses; it included a 7 amp fuse for the steering motor supply, a 20 amp fuse for the motorized wheels, a 1 amp logic supply fuse, a 7 amp regulator supply fuse, a 1/2 amp fuse for the 5 volt supply to the computer, and a 1 amp fuse to supply 12 volts to the computer. The second circuit that | built was the motorized wheel control.© This circuit took in +5 volts and + 12 volts and released + 12 volts to go to the motor. It took in two TTL logic inputs, one for forward and reverse and the other to turn the motor on or off. The third circuit that Mike needed was a steering motor control.© Build- ing the steering motor circuit actually consisted of constructing two identical circuits, one for turning right and one for turning left. Input for the steering control was +5 and +12 volts as was the input to the wheel control. The output was + 12 volts. Two TTL logic inputs were required in addi- tion, one to steer right and the other to steer left. All three of the circuits described above were bolted to the outside of the triangular frame, with all heat sinks snugly fitted to the aluminum. Al- together, the parts for the circuits cost under one hundred dollars. This fact got me to thinking about how much circuitry | wanted to add, and whether it would be cheaper to use a computer. As soon as the inverter was added and the program perfected, Mike became a working robot. With the new microprocessors on the market, an inexpensive and more versatile alternative to hardware was available. After due consideration | decided that a microprocessor would be my best choice, and in so doing opened up a whole new world. | looked around at several of the micro- processors and decided on the Kim-1. There were a number of factors that influenced my decision. One advantage was that the Kim was already built. Also it was lightweight and small, which was crucial since it was to be mounted on the robot. In addition, it was one of the least expensive micraprocessors on the market, costing only $245.00. Of all the advantages, the one that was probably most important to me was that the Kim-1 came with its own built-in keyboard and dis- play for loading programs. This fact meant that | didn’t have to purchase an additional video or printer to load programs into the Kim. | made up my mind to order a Kim-1. It took about two weeks to arrive and in the meantime | developed a mounting system for it. | cut a triangle out of ¥2”’ plywood 23” on a side. | then cut the ends off of the triangle five inches from each corner. This formed a rough hexagon that screwed down on top of the aluminum triangular frame. When the Kim-1 arrived | was able to mount it on ¥2” spacers and anchor it into the wood with screws.‘ The first thing | did once the Kim was mounted was to load in and play a series of games. In spite of my fascination with these programs, | settled down to work. | read over the Kim programming language and with help from my father | began to face the problem of controlling the robot. The first step was to write a program. The best, pro- gram appeared to be a program loop.* The computer would constantly be going through a series of instructions to monitor any commands given and then execute them. After getting the general pro- gram written, | found that three comparators were required to compare the input from the command pots with the actual position or speed of the wheels.° | tested the program with the comparators and then modified and perfected it. The final program loop could be subdivided into four parts for explana- 3—See photo #2 A—See diagram A B—See diagram B C—See diagram C 4—See photo #3 ~—-See flow chart and program D—See diagram D | 20 INTERFACE AGE APRIL 1977 camptek. Boards DO Something =| ci2400 a Real Time Clock rT $98—Kit $135—Assembled needs to know what time it is, our CL2400 is for you. The present time in hours, minutes, and is always available for input, and is continuously by the highly accurate 60 Hz power line frequency. “Weed periodic interrupts? The CL2400 can do that, too, at any of 6 rates. Reference manual with BASIC and assembly language software examples included. aa PC3200 Wathets a \ Power Control System 4% ~. Le "qe PC3232 $299—Kit — $360—Assm. 7 PC3216 $189—Kit $240—Assm. PC3202 $39.50—Kit $52—Assm. If your system needs on/off control of lights, motors, appliances, etc., our PC3200 System components are for you. Control boards allow one |/0 port to control 32 (PC3232) or 16 (PC3216) external Power Control Units, such as the PC3202 which controls 120 VAC loads to 400 Watts. Optically isolated, low voltage, current-limited control lines are standard in this growing product line. comptek. sande, CA Bt La Canada, CA 91011 “Real World Electronics" (213) 790-7957 | CIRCLE INQUIRY NO. 2 MORE POWER TO YOUR ALTAIR* 12 AMPS @ 8v. (nominal) 2AMPS @ + 16v. At any line voltage from: 90 to 140 volts. Installs easily inside any Altair* 8800 or 8800a. Over voltage and over current protected. Conservatively designed and specified. only $90.00 postpaid intheUSA California residents add $5 40 sales tax PARASITIC ENGINEERING PO BOX 6314 ALBANY CA 94706 “Altair is a trademark of MITS Inc BANKAMERICARD CIRCLE INQUIRY NO. 32 22 INTERFACE AGE tion purposes. The first part was the initialization, which was to get the computer ready to go through the main loop. The second section was the steering control, in which the computer compared the digital reading from the steering command potentiometer with a pot mounted above the shaft of the steerable front wheel. It then made the two numbers equal by rotating the front wheel right or left. A limit switch was written into the program so that the wheels can turn no more than 60 degrees in either direction. The third part of the program was the speed con- trol. The digital readout from the speed command pot was given to the Kim via a very simple analog to digital circuit. This number caused the computer to turn the motors on a specific number of time units out of ten, and off the remaining number of time units. The fourth part of the program was the speed and direction determination. This part of the program actually occurred before the speed control. The computer determined whether a com- mand from the command pot was for “forward” or for “reverse” and then figured out at what speed. After the speed and direction determination part of the program figured out the number of ‘motor on” cycles out of ten, and the number of “motor off” cycles, the command was executed by the speed control section of the program. Having perfected the program, | prepared to test it and, while doing so, | found a peculiarity with the Kim-1. When | hit the RESET button, instead of putting out logic zero on the output lines, as | had expected, the Kim-1 put out all logic 1's. This caused Mike to go into full speed forward, and if he hadn't been on a testing block he would have crashed headlong into the wall. This incident prompted me to add an inverter to Mike’s circuitry so that the experience would not be repeated.® As soon as the inverter was added and the program perfected, Mike became a working robot. | wrote a few short programs so that when | was not con- trolling Mike, he would be moving about in a pre- planned pattern. He moved in a clover leaf pat- tern for one of these programs, and for the other, executed a simple back-and-forth pattern, turning slightly left everytime it goes forward. These pro- grams were used primarily for demonstration pur- poses and were not usually stored in memory. After getting Mike working | controlled him at first with two potentiometers and a forward/ reverse switch. One pot controlled the speed of the robot, while the other turned him right or left. Later | replaced this arrangement with a joystick.® All together, Mike had progressed from a whimsical idea in my head to a complex computer-controlled robot in less than three months. Although Mike is a working operator-controlled robot, he is far more complete. He represents only the beginning of a complex independent unit. The next phase of construction will be to add some type of sensors to Mike’s outer hull. First | will be wanting to add a framework over the triangle. | believe it will be in the shape of a nonequilateral octagon. On each side some type of sensor will B—See diagram c 5—See photo #3 APRIL 1977 be mounted, to detect wall or objects in Mike’s path. | have experimented with the possibility of using proximity switches, but | have found them to be ineffective against wood and other non- conducting obstructions. Ultrasonics and infrared light offer two unrealistic possibilities because | do not have the knowledge nor the funds to employ either one. My most practical possibility is the use of bumpers. These bumpers could consist of metal plates mounted on buttons and springs. They could detect when Mike bumps into an object and make him respond according to which bumper was triggered. Any thoughts or suggestions about any other type of sensors would be more than welcome. Besides sensors, there are many other additions | plan for Mike in the future. For one thing, when his battery gets weak, he will hunt out his charger and plug himself into it to recharge his battery. There is also the possibility that | will build up from his triangular base to give Mike two arms and a head. | may give him a voice or the ability to respond to certain voice commands. The possi- bilities are limited only by my imagination. Who knows? The next person you see walking down the street may, in fact, be something else. ... INITIALIZATION PROGRAM 0290 AQ 1F INIT LDA #S$1F Set DDRA PAO-4 = OUTPUT 0292 8DO0117 STA $1701 PA 5-7 INPUT 0295 Ag 00 LDA #$00 SET DDRB PBO-7 INPUT 0297 8D 0317 STA$1703 029A AS 00 LDA #$00 LOAD AWITHO 0296 85 02 STA $02 STORE IN SPEED COUNT O28E 85 03 STA $03 STORE IN ‘ON' TIME O2A0 AI OA LDA #$ 0A SET OFF TIME 0242 85 04 STA $04 STORE IN ‘OFF’ TIME O2A4 AQ 24 LDA #$24 SET STEERING TO CENTER O2A6 85 01 STAO1 O2A8 AQ FF LDA FF 22AA 8D 0017 STA 1700 SET PA TOALL 1's. 02AD AQ 00 LDA #$00 SET BUMPER CYCLE O2AF 85 06 STA $06 = COUNT TOO 02B1 403502 JMP SCAN 3 START SCAN THIS ROUTINE HAS A MAIN PROGRAM WHICH IS PART OF THE MAIN SCAN ROUTINE. IT CONTROLS THE SPEED OF THE MAIN MOTORS BASED ON THE NUMBER OF TIME THROUGH THE SCAN ROUTINE. 24 INTERFACE AGE SPEED CONTROL PROGRAM 02CO AS 02 SCAN LDA $02 GET SPEED COUNT 02C2 OA ASL SHIFT BIT 7 TO CARY (ON-OFF INDICATOR) 02C3 FO 05 BEQ CHNG Branch if Speed Count = 0 02C5 C6 02 DEC $02 DECRIMENT SPEED COUNT 02C7 4C 0003 JMP SCAN1 Jump to Scan Continuation 02CA BO 13 CHNG BCS On Branch if Carry Set (ON' Cycie) 02CC A5 03 OFF LDA, $03 Get Value of ‘ON’ Time O2CE FO OF BEQ ON BRANCH IF VALUE = 0 02D0 09 80 ORA #$80 Add the “ON” Cycle Indicator 02D2 85 02 STA $02 PUT IN SPEED COUNT 0204 ADOO0I7 LDA $1700 READ PA 02D7 29 F7 AND #$F7 SET PA3 TO 0' (Speed Control) 0209 8D0017 STA$1700 SEND PA3=0 (Speed Control) 02DC 4C 0003 JMP SCAN1 Jump to Scan Continuation *CARRY SET—END OF ON CYCLE O2DF A5 04 ON LDA $04 GET VALUE OF OFF TIME 02E1 FO E9 BEQ OFF BRANCH IF VALUE = 0 02E3 85 02 STA $02 STORE IN SPEED COUNT O2E5 AD 0017 LDA 1700 READ PA 02E8 09 08 ORA #$08 SET PA3TO‘1" (SPEED CONTROL = OFF) Q2EA 8D O17 STA 1700 SEND PA3 = 1 @ED 4C 00 JMP SCAN1 Jump to Scan Continuation MANUAL CONTROL TABLE 0010 OF OA TABLE FAST 0012 12 5 MEDIUM FAST 0014 17 73 MEDIUM REV 0016 1D & MEDIUM SLOW 0018 23 91 SLOW OO1A 26 AO OFF oo1c 2am SLOW OO1E 28 & MED SLOW 0020 2D 73 MED FORWARD 0024 3 0A FAST 0026 APRIL 1977 PROGRAM FOR JOYSTICK CONTROL 0247 £501 SBC $01 Sub #IN LOC 1 4 ANALOG-TO-DIGITAL 2 INPUTS RELAY OUTPUTS 0249 FO OF BEQ EQ START PROGRAM AT LOCATION 0290 HEX 0248 10 18 BPL PL 024D AD 00 17 LDA 1700 READ PA Address CODE LABEL MNEMONIC COMMENTS 0250 09 04 ORA #$04 Set PA2 TO ‘1’ (Steer Left) 0252 29 FD AND #SFD Set PA1 to 0’ (No Steer Right) 0200 20 IF 02 ATODIJSRSTART 0254 8D 00 17 STA 1700 OUTPUT PA1 =‘1' PA2 = ‘0’ 0203 2E 00 17 LOOP! BIT 1700 TEST PA FOR INPUT 0257 4C 72 02 JMP CONT CONTINUE SCAN ROUTINE 0206 10 FB BPL LOOP! CHECK BIT7 FOR ‘1’ 0208 AD 00 17 STOP LDA $1700 READ PA 025A AD 00 17EQ LDAS$1700 READ PA 0208 29 FE AND #$FE SET BITOTOO 025D 09 06 ORA #$06 Set PA1, PA2, to ‘1’ 020P 8D 00 17 STA $1700 OUTPUT ‘0’ ON PAO (Left, Right Stay) 0210 AD 04 17 LDA $1704 GET TIMER COUNT 025F 8D 00 17 STA $1700 SEND PA1, PA2 = 0 0213 60 ATS 0262 4C 72 02 JMP CONT CONTINUE SCAN ROUTINE 0214 20 1F 02 ATOD2JSR START 0265 AD 00 17PL LDA1700 READ PA 0217 2C 00 17 LOOP2BIT 1700 TEST PA FOR INPUT 0268 09 02 ORA #$02 SET PA1 to ‘1' (STEER RIGHT) 021A 50 FB BVC LOOP2 CHECK BIT 6 FOR ‘1’ 026A 29 FB AND #$FB SET PA2 TO ‘0' (No Steer left) 021C 4C 08 02 JMP STOP 026C 8D 00 17 STA 1700 OUTPUT PA2 = 1,PA1 =0 O26F AC 72 02 JMP CONT CONTINUE SCAN ROUTINE 021F AQ 42 STARTLDA#$42 STARTING COUNT 0221 8D 05 17 STA $1705 STOP COUNT IN -8 TIMER 0272 4C CO 02 CONT JMP SCAN NORMAL LOOP BACK 0224 AD 00 17 LDA $1700 READ PA 0275 0227 09 01 ORA #$01 SET PAOTO'1' FOR TESTING ONLY 0229 8D 00 17 STA $1700 OUTPUT A‘1’ ON PAO 0272 AS 01 CONT LDAO1 FOR TESTING ONLY 022E 60 RTS 0274 85 FA STA FA 022D AQ 1F MAIN LDA @$1F Set DDR PAO-4 OUTPUT 0276 AS 00 LDA 00 022F 8D 01 17 STA$1701 PAS-7 INPUT 0278 85 FB STAFB 0232 4C 58 02 JMP FQ INITIALRE 027A 4C CO 02 JMP SCAN 0235 20 00 02 Scan3 JSRATOP1 GET INPUT 1(Steering Pot) 0238 85 00 STA #$00 Store Result in Save Area 027D AS 28 WAIT LDA#S$28 Starting Timer Count (Check) 023A 20 7D 02 JSR WAIT Delay for Capacitor to Discarge 027F 8D 05 17 STA $1705 STORE IN -8 TIMER 023D 4C 5C 03 JMP PATCH1 Go To Steering Limit Patch 0282 A9 00 LDA #$00 0240 85 01 STA #$01 Store Result in Save Area 0284 CD 0417 Check CMP 1704 0242 20 7D 02 JSR WAIT Delay for Capacitor to Discharge 0287 D0 FB BNE Check 0245 AS 00 LDA #$00 PUT LOC OIN ALL 0289 60 RTS altair - IMSAI - S-100 BUS PLUG COMPATIBLE Check these features ... ACCESS TIME — 450ns No wait states FULLY BUFFERED — for BUS reliability LOW POWER CHIPS — for long life and low power drain MEMORY WRITE PROTECT — Hardware, 2K seqments POWER REGULATION — 4 Regulators for reliability ADDRESS SELECT — 1K boundaries - Dip. Switch LED MEMORY SELECT INDICATOR — Visual Check LED MEMORY PROTECT INDICATOR — Visual Check BATTERY BACKUP PROVISION — Saves memory during power failure OUTPUT DISABLE — Switch selectable for transparent loader application P.C. BOARD — Quality G10 material with solder mask both sides and silkscreen SOFTWARE — Diagnostic provicied Address City Ts pie Tn lsat State oon Peay. Money Order O Master Charge CJ: Card No Interbank No Narne __ Enclosed is $ T Check () Bill my BonkAmericard 0 KIT = With IC Sockets ........... $239 Exp, Date © KIT — Without Sockets $225 Solder chips directly to PCB . = Signature __ a ee Sea Ss - = Handling and Postage $2.50. California Residents add 6% sales tax FE ASSEMBLED — With Sockets ...... $795 ASSEMBLED — Without Sockets... $280 FRANKLIN ELECTRIC Co. 733 LAKEFIELD ROAD WESTLAKE VILLAGE, CA 91361 (805) 497-7755 APRIL 1977 CIRCLE INQUIRY NO. 13 26 INTERFACE AGE Code Label = Mnemonic 20 1F 02 AtoD3 JSR START AS 20 LOOP3 LDA #$20 2D 00 17 AND $1700 FO F9 BEQ LOOPS 20 08 02 JSR STOP 60 RTS 20 FO 02 Scan1 JSRATOD3 85 FQ STASF9 C9 26 CMP #$26 10 2E BPL REV AD 00 17 LDA $1700 09 10 ORA #$10 8D 00 17 STA $1700 AS F9 SCTAB LDASF9 A2 00 LOX #$00 DS 10 EA Again CMP Table, X 30 06 BMI FOUND E8 INX INX EO 12 CPX #$12 O31E DO F5 BNE AGAIN 0320 &8 Found INX 0321 BS 10 EA LDA TABLE, x 0324 4A LSR 0325 4A LSR 0326 4A LSR 0327 4A LSR 85 04 STA SOFF 032A B5 10 EA LDA TABLE, X APRIL 1977 MANUAL CONTROL PROGRAM Comments START A/D 3 COUNT SET MASX FOR PAS BRANCH IF PAS =1 Stop A/D 3 Conversion A = Value ON RETURN A = VALUE PUT BYTE IN DISPLAY AREA IF VALUE > = 26 THEN GO TO FORWARD ROUTINE SET PA4 = 1 (REVERSE) Retrieve Byte From A/D 3 Conv. SET INDEX REG = 0 Get Table “Speed” Value Branch if Hit in Table INCREMENT TO NEXT VALUE CHECK FOR END OF TABLE Move Pointer to “Action” Value Get Action Value IntoA SHIFT LEFT 4 BITS TO RIGHT—FILLIN ON LEFT WITH O's PUT VALUE IN OFF TIME GET ACTION VALUE AGAIN 0331 BBES 033F REESE REE 29 OF AND #30F MASK OUT LEFT 4 BITS 85 03 STA SON STORE IN “ON” TIME 20 7D 02 JSR WAIT Delay for Capacitor Discharge 4C 35 02 JMP SCAN3 AD 00 17 REV LDA$1700 29 EF AND #SEF 8D 00 17 STA $1700 Set PA4 = 0 (Forward) 4C 11 03 JMP SCTAB NOW SEARCH TABLE STEERING TABLE PATCH 20 14 02 Patch JSRATOD2 Get Count (Patch from 923D A2 00 LOX #$00 SET INDEX = 0 DD 73 03 Again2CMP TABLE 2,X GET STEERING VALUE Ww 06 BMIFOUND2 BRANCH IF HITIN TABLE i) INX Py Es INX Increment to next Value EO 14 CPX #$14 CHECK FOR END 00 F5 BNE AGAIN2 E8 Found2 INX Move Pointer to Steering Val BD 73 03 LDA Table2,X —_ Get Steering Value into A 4C 40 02 JMP 0240 RETURN FROM PATCH OE 26 = Table2 0E 26 Table of Steering Values 13 26 13 26 Left Byte is From 18 27 1827 A + D Conversion Right 1D 28 1D 28 Byte is Value Used 22 29 2229 To Determine Steering 27 2A 27 2A Angle. 2A 2B 2A 2B 2c 2c 20 2C 2E 20 2E 2D 3Q 2E 30 2E 31 2F 21 2F INTERFACE AGE 27 Motorized Wheel Control +5 Disable Switch Speed Contro © Dri Motors ' +5 , { +12 4 Relay Radio Shack HEP 275-208 Dkeot $0019 rection 330 ac Control ~ 2012 AAA RS a . bai! 2012 33K Gas me 00 tut = DIAGRAM C PROM: Space for 2K bytes, 1702A. Store bootstrap loaders and monitors. RAM: 1K bytes, 2102LIPC, 450 ns, low power. NO NEED TO RELOCATE STACK WHEN ADDING MEMORY. CIRCUITRY: Replaces memory write logic on ALTAIR™ and Imsai front panels. REGULATORS: Two regulators. No need for regulated power supply. JUMP-ON-RESET: PROM program execu- tion starts at any location in memory without interfering with programs in any other por- tion of memory. —— ' ; = $-100 BUS; +8 and -16 VDC; P/C BOARD c_- rn ee SOLDER MASKED BOTH SIDES WITH PLATED THROUGH HOLES; ALL SOCKETS INCLUDED. OPTIONAL FIRMWARE: 512 byte monitor for use with Tarbell tape interface on 2, 1702A PROMs. + OPTION C - SIO 2 (IMSAI) $129 IMMEDIATE DELIVERY FROM FACTORY + OPTION D - Poly Video Interface $159 from \\ OR YOUR LOCAL COMPUTER STORE Ps se PROM/RAM KIT WITHOUT PROMS $ 89 reel +OPTIONA-SIORev.1or3P+S $129 ee : M + OPTION B -2 SIO (MITS) $129 (Includes Video Driver) California residents please add 6% tax. — = Vector G2aPriC TOR GRAPHIC iNC. 17 LAKEFIELD ROAD, SUITE F ¢ WESTLAKE VILLAGE, CA 91361 © (805) 497-0733 28 INTERFACE AGE CIRCLE INQUIRY NO. 45 APRIL 1977 DIAGRAM C continued Steering Motor Control To Steering 4 Motor 2 Note: “X" Represents The Normally Open Contacts & “1” Is The Normally Closed Contact. Relay Contacts Shown For Radio Shack Relays Part #275-206 Comparators RS 339N +5V , 10 yt Speed Command 4 Pin 36° ——e PAS 10K Stearing _ Gommand ONS Pol 1 yt 10K Pin 2° + PAO -Tyt * Microprocessor Connector DIAGRAM D = Pineda Note Gt 7 It On Tells Processor That Ths sor is A “Motor On” Porton Of Cycle o Set PAO 4<t<in Carey Poston PA 5 -Tefecest PHO 7g ' Ocecrimer No: End of “OFF” Cytie Speed Court Sat Speed Count =0, “On” Tere=0 Ottune = 0A End of “ON” Cycle Ge Vaue it Of On Tune Set Sreering To Conner Get Voie Set PA To Al Of Of Tune Os ' = Soot Porter No Cytie Court To 0 Ags “ON” Cycle indcator (Be Tet) Sure in oor Speed Count Routine Go To AO | . S2rowve Store Off Tine Sure Rese in Speed Court in Save 0 Tum ‘Or Motor t Turn "Oe Motor Go To Detay : Seroure 7 T (To Gwe Capector = Teme To Deectarge) + Go To A/D 3 Go To AD 2 nore Vette Marve Suercane. m FO Control Program Search Table 2 For Vue >Arno ver No Put Correspondag Sweering Vale mA ree Set Drecter: ~horwars 0 Suteract A~ Ay Set Owechon + Value From 3A ~ Reverses) Store A Store A SAV : —_ t Search Tete F Go To DELAY Gun tase sien s Byte For Spee Court Fron A/D 1 AD I<AD2 Set Bits Set Bas PA i=0 PA 1-1 PA 2-1 PA 260 Steer Let (Sheer Right) Get Action Value Agen Set Hts Mask Lot 4 Bes PA 1, PA? wt = (NO Sisenng Go To DELAY oa S.tratre Scan Bove 30 INTERFACE AGE APRIL 1977