Archive-name: robotics-faq/part5 Last-modified: Mon Dec 12 12:00:52 1994 This is part 5 of 5 of the comp.robotics Frequently Asked Questions (FAQ) list. This FAQ addresses commonly asked questions relating to robotics. ____________________________________________________________________________ Copyright Notice This FAQ was compiled and written by Kevin Dowling with numerous contributions by readers of comp.robotics. Acknowledgements are listed at the end of the FAQ. This post, as a collection of information, is Copyright 1994 Kevin Dowling. Distribution through any means other than regular Usenet channels must be by permission. The removal of this notice is forbidden. This FAQ may be posted to any USENET newsgroup, on-line service, or BBS as long as it is posted in its entirety and includes this copyright statement. This FAQ may not be distributed for financial gain. This FAQ may not be included in commercial collections or compilations without express permission from the author. Changes, additions, comments, suggestions and questions to: Kevin Dowling tel: 412.268.8830 Robotics Institute fax: 412.268.5895 Carnegie Mellon University net: nivek@ri.cmu.edu Pittsburgh, PA 15213 ___________________________________________________________________________ Part 5/5 [11] Whatever happened to Heathkit Hero Robots? [12] What's available for Puma Manipulators? [13] What kinds of Robotics Simulators are there? [13.1] Commercial Simulators [13.2] Shareware and Freeware Simulators [14] What Real-Time Operating System should I use? [15] What is NuTank? [16] Survey of Mobile Robot Development Environments [17] Small development platforms [17.1] What is the Miniboard? [17.2] What is the F1 Board? [17.3] What is the Bot Board? [18] What is the XXX Microcontroller? [18.1] Motorola 68XX [18.2] Motorola 683xx [18.3] Intel 80C186 [18.4] Intel 8051 [18.5] Intel 8096 [18.6] Microchip PIC16/17 [18.7] Parallax BASIC Stamp [18.8] National Semiconductor LM628/629 [18.9] Hewlett-Packard HCTL 1000, 2000 [18.10] Motor Drivers [19]Acknowledgements ____________________________________________________________________________ [11] What's available for Heathkit Hero Robots? Heath/Heathkit/Zenith [OUT OF BUSINESS] Benton Harbor, MI order: 800.253.0570 (At last report these numbers do not work) tech: 616.982.3980 Heros are no longer being made but Heath (Zenith) still offers some replacement parts. They had about 8 years of sales: 4,000 Hero Jr's, 3,000 Hero 2000's, 14,000 assembled Hero 1's. Ones with less capability didn't do as well but higher priced ones did ok in the market. Service and maintainability are a problem due to the sheer number of bolts, pulleys, boards, sensors, cables etc. Used ones can be picked up cheap - but caveat emptor. There is a mailing group for hero owners managed by Dave Goodwin: <Hero-owners-request@smcvax.smcvt.edu> Send the following command in the message body: Subscribe Hero-owners You may also want to include a HELP command line to get the commands and their syntax. Note that the subject on the message is irrelevant. Of course, to post a message to the group, just send it to hero-owners at the same host. The Mailserv software can handle files as well, but none are currently available. Hopefully, list subscribers will start to provide any nifty code they write for the archive. Finally, the list of subscribers is available from the Mailserv. See the help file for how to get it. Questions or problems should be addressed to Goodwin@smcvax.smcvt.edu, not at the waldo address. _____________________________________________________________________________ [12] What's available for Puma Manipulators? Pumas are probably the most common robot in university laboratories and one of the most common assembly robots. Designed by Vic Schienman and financed by GM at MIT in the mid-70's, the Puma (Programmable Universal Machine for Assembly) was produced for many years by Unimation (later purchased by Westinghouse and sold at a loss later to Staubli, a Swiss company) Found in many university labs as well. Staubli Unimation, Inc. 211 Overlook Drive Sewickly, PA 15143-2305 tel: 412.741.1740 fax: 412.741.1789 Staubli Unimation Ltd Unit G, Stafford Park 18 Telford, Shropshire, TF3 3Ax UK PUMA singularities: The PUMA has three singularities: the ``alignment'' singularity (wrist is as close to the axis of joint 1 as it can get), the ``elbow'' singularity (elbow is fully extended or folded up; the latter is not possible because of joint limits), and the wrist singularity (the axes of joints 4 and 6 are aligned). The angles corresponding to these depend on the Denavit-Hartenburg (DH) parameter assignment. For the PUMA, the definitions given in [1] are perhaps the most commonly used Using these, and letting A2, A3, D3, and D4 denote the translational DH offsets, the singularities occur when the following are true: Alignment: D4*sin(ang2+ang3) + A2*cos(ang2) - A3*cos(ang2+ang3) == 0 Elbow: sin(ang3 - atan2(A3,D4)) == 0 Wrist: sin(ang5) == 0 Typical offset values for the PUMA 560 are A2 = 431.80 D3 = 149.09 A3 = 20.32 D4 = 433.070 [information provided by John Lloyd <lloyd@curly.mcrcim.mcgill.edu>] Puma Gear Ratios ---------------- Joint # Gear Ratio -------- ----------- 1 0.01597 2 0.00931 3 0.01884 4 0.01428 5 0.01391 6 0.01303 ------------------------------------ Tech Report and Matlab Toolbox [Peter Corke] A technical report is available which provides details of the Unimation Puma servo system, including details of interfacing via the arm-interface board, digital board firmware, and analog board/motor dynamics. (54 pages) It can be found at ftp://asgard.mlb.dmt.csiro.au/pub/pic/mtm226.ps.Z A Robotics Toolbox for MATLAB which provides functions for homogeneous transformations, quaternions, forward and inverse kinematics, trajectories, forward and inverse dynamics, and graphical animation. The Toolbox uses a very general method of describing the kinematics and dynamics of any serial-link manipulators. Descriptors for the Unimate Puma 560 and the Stanford arm are included. Location - ftp://ftp.mathworks.com/pub/contrib/misc/robot That directory contains an extensive manual, doc.ps (72 pages), as well as all the M-files. ------------------------------------ Trident Robotics and Research, Inc. 2516 Matterhorn Drive Wexford, PA 15090-7962 (412) 934-8348 email: <robodude@cmu.edu> A board for replacing the PUMA LSI/11 controller with the CPU of your choice: The board is basically an I/O board with D/A's, A/D's, encoder counters and some digital I/O lines and is available to connect to several bus architectures including VMEbus, IBM-PC bus, Multibus and IndustryPack bus. (with others under consideration) It comes as a two-board set: A PUMA board and a bus interface board. This allows several buses to be supported and keeps the analog electronics away from the noise of the bus. (It also makes switching buses cheap, if the need ever arises.) Since it is primarily an I/O board set, it can be used in applications other than controlling a PUMA. The user's manuals are available by anonymous ftp: ftp://ftp.cs.cmu.edu/usr/anon/user/deadslug/trc4um.ps and trd0002.ps This is a PostScript file that can be printed or viewed (to conserve paper) and describes the remote board that mounts inside the Unimate controller, replacing the VAL computer. The file trd0001.ps shows the board arrangement diagrammatically. ------------------------------------ Useful Puma references: Richard Paul, Brian Shimano, and Gordon Mayer, ``Kinematic Control Equations for Simple Manipulators''. IEEE Transactions on Systems, Man, and Cybernetics, Vol SMC-11, No. 6, June 1981. B Armstrong, O Khatib, and J. Burdick The Explicit Dynamic Model and Inertial Parameters of the PUMA 560 Arm Proceedings IEEE Int. Conference on Robotics and Automation, April 1986 San Francisco, CA pp510-518 P.I. Corke and B. Armstrong-Helouvry A search for consensus among model parameters reported for the Puma 560 Robot Proc. IEEE Conf. Robotics and Automation, 1994 pp. 1608-1613 It is also available via anonyous ftp from ftp://asgard.mlb.dmt.csiro.au/pub/pic/icra94.ps.gz _____________________________________________________________________________ [13] What kinds of Robotics Simulators are there? Simulation allows researchers, designers and users to construct robots and task environments for a fraction of the cost and time of real systems. They differ significantly from traditional CAD tools in that they allow study of geometries, kinematics, dynamics and motion planning. This list is NOT a comparative analysis of the different systems but rather a list of systems that are available. [13.1] Commercial Simulators [13.2] Shareware and Freeware Simulators ------------------------------ [13.1] Commercial Simulators ----- Auto Simulations, Inc. 655 Medical Drive Bountiful, UT 84010 tel: 801.298.1398 contact: Teresa Francis, ext 330 Products: AutoMod II Platforms: ? Cost: ? ----- CADSI PO Box 203 Oakdale, IA 52319 tel: 800.383.1322 tel: 319.337.8968 DADS - kinematics and dynamics package. Have ProEngineer to CADSI interface. Supports rigid and flexible body analysis. Animation and interfaces to FEA/FEM and CAD programs. ----- Deneb Robotics, Inc. 3285 Lapeer Road West PO Box 214687 tel: 313.377.6900 Product: IGRIP Platforms: SPARCs, SGI Cost: US$50-$60,000. Allows offline programming, dynamics capability etc. ----- Mechanical Dynamics Inc. 2301 Commonwealth Blvd Ann Arbor, MI 48105 tel: 313.944.3800 fax: 313.994.6418 email technical hotline: hotline@adams.com ADAMS is a general purpose dynamics simulator: it can be used to simulate any mechanism. You input the model you want to simulate, and ADAMS builds the system of equations, and solves it through time. You can do kinematic, static, quasi-static and dynamic simulations. And then, you can study the results (forces, accelerations and so on). It has a good graphical interface, although it's non-standard (it doesn't use OpenLook or Motif, but it's own windowing system). But if you want to study something not very common, you will have to deal with the text interface, and perhaps Fortran programming. It's not very easy to learn. ----- Silma/Cimstation 1601 Saratoga-Sunnyvale Road Cupertino, California 95014 tel: 408.725.8908 Product: CimStation Platforms: SGI-4D, SUN SparcStation, Apollo, Intergraph, Computervision, HP, IBM Risc6000 and DEC. Cost: Base system around $55K (commercial license) They also have a University Partnership Program to enable universities to purchase CimStation for around $20K US and $25K International. Features: Silma offers application solutions for Spot Welding, Arc Welding, Painting, Stamping and Assembly, as well as Robot Calibration Tools. Also, SILMA has direct CAD interfaces to Computervision CADDS, Parametric Technology Corporation Pro/ENGINEER, IBM CATIA ans MCS ANVIL5000. We also support VDAFS and SET in addition to IGES. Finally, in addition to CimStation Robotics, we also offer SILMA(R) CimStation Inspection - used to create, simulate and edit DMIS programs for coordinate measuring machines- (CMMs) and SILMA(R) CimStation NC Verification- used to simulate and verify NC part programs. Provides: Basic CAD Tools: 2D and 3D solid & wireframe, IGES interface, Robot Modelling: generate the required governing equations (iterative or closed form) automatically for "many" classes of robots Path Generation Kinematic Simulation with Collision Detection Dynamic Simulation (CimStation only at this point) I/O Operations John Craig, who wrote the book, Introduction to Robotics is head of Silma's R&D. Silma has a programming environment called SIL complete with its own PASCAL-like iterative language with graphics and robotics extensions. CimStation is built out of this language. This allows you to add your own functionality. E.g. your own path planner. You can also write C-code, compile it, and add it to the system. ----- Comutek 1223 Peoples Avenue Troy, NY 12180 tel: 518.276.2817 fax: 518.276.XXXX contact: Vinay Joshi Products: Work-Out Cost: Around $25000. ----- Robot Simulations Ltd. Lynnwood Busines Centre Lynnwood Terrace Newcastle-upon-Tyne, NE4 6UL England tel: +44 (0)91 272 3673 fax: +44 (0)91 272 0121 US contact: John Lapham Applications Engineer International Business Link 17105 San Carlos Blvd. Suite A6151 Ft. Myers Beach, FL 33931 tel: 813.466.0488 fax: 813.466.7270 e-mail: lapham@gate.net Robot Simulations (RSL) develops and markets the world's first microcomputer based industrial robot simulation software named Workspace. The package has been selling since 1989. The package uses 3d graphics to simulate robots and their associated machinery in a workcell, and is capable of offline programming industrial and educational robots in many different robot languages. It runs on a PC and is $5K to educational institutions. $26K for industrial version. Workspace 3 robot simulation: Kinematic modeller Discrete event simulation Interactive creation of new mechanimsm Library of standard robots Advanced robot languages Dynamics simulator Variables Forces and torques calculated Subroutines Graphical representation of results Loop structures Sophisticated motion commands Text editor Accurate representation of mechanisms Integral editor for track and Calculation of cycle times teachpoint files Collision detection Solid 3-d rendering Integrated CAD system Fast shaded animations in 256 colours Constructive solid geometry Library of standard 3d primitives Computer Aided Learning Extruded polylines Simple authoring of training exercises Spheres Cones Calibration Cylinders In-built robot and fixture Boxes calibration system Surfaces Solids of rotation User Manuals DXF and IGES import facilities Tutorial exercises Example robots and workcells The system is in use throughout Europe and the Far East in both Industry and Education with several hundred seats. Sales in the USA are relatively recent. Further details can be obtained from myself, Or from the Robot Industry Association in the USA, or from our USA representative: ----- Tecnomatix Technologies/Robcad 39750 Grand River Avenue Suite A-3 Novi, MI 48375 tel: 313.471.6140 fax: 313.471.6147 Platforms: HP, Silicon Graphics, IBM and Sun Tecnomatix makes several packages for simulation including ones for Spot welding, Arc welding, Painting, Teleoperation (Martel), CMM and Drilling. They also have an open systems environment, ROSE, that allows user customization and interface design. ROBCAD itself allows robot modeling (library of 100 robots is supplied), collision free path generation, importation of IGES, VDAFS and SET files and direct interface with Catia and ComputerVision. [GMF - the entry that used to be here, no longer supports OLPW-200, instead they are a Robcad reseller] ------------------------------ [13.2] Sharware and Freeware Simulators Many university groups and individuals have developed simulators for their own work and made them available via the net. ----- Ars Magna: The ARS MAGNA robot simulator provides an abstract world in which a planner controls a mobile robot. The simulator also includes a simple graphical user-interface which uses the CLX interface to the X window system. Version 1.0 of the ARS MAGNA simulator is documented in Yale Technical Report YALEU/DCS/RR #928, "ARS MAGNA: The Abstract Robot Simulator". This report is available in the distribution as a Postscript(tm) file, as well as from: Paula Murano Yale University Department of Computer Science P.O. Box 2158 Yale Station New Haven, CT 06520-2158 net: <murano@cs.yale.edu> Comments to Sean Engelson: <engelson@cs.yale.edu> ARS MAGNA is available by anonymous ftp: location: ftp.cs.yale.edu directory: pub/nisp filenames: * ----- EROS [Erann's RObot Simulator]: EROS is a mobile robot simulator. Unlike other simulators, EROS does not simulate any particular robot. Instead, EROS is a sort of robot simulation construction kit. It is designed to allow users to assemble their own robots from reusable software components, and to run those robots in user-designed environments. EROS draws inspiration from Hanks and Firby's truckworld simulator, but EROS operates at a lower level of abstraction than truckworld, and so it is by some measure more realistic. EROS has been used to simulate actual physical robots, and the behavior produced by EROS has, in some cases, made plausible predictions and accurate postdictions of the behaviors of the real robots. NOTE: This is a beta-test version of EROS. It runs only under Macintosh Common Lisp version 2.0. Many of its features have not been tested (although it has been used in a few applications, so parts of it work quite well!) and the documentation is not very coherent. EROS is available by anonymous ftp at: ftp://robotics.jpl.nasa.gov:pub/gat/eros.sit.hqx This is an early version for beta testing only. It runs only under MCL 2.0. It will not run under any other version of Common Lisp, including MCL 1.3. (EROS relies heavily on Macintosh graphics and CLOS.) It also includes only a single example robot, so out of the box it doesn't do very much. You have to be willing to do a little hacking to use it as it currently stands. A future release will have more turnkey functionality, but it's pretty much an OEM product at this point. Contact: Erann Gat <gat@robotics.jpl.nasa.gov> ----- Flakey: A mobile robot simulator and controller. Contact: Kurt Konolige of SRI <konolige@ai.sri.com> A Preliminary version of a mobile robot simulator and controller. All written in C, but you need Motif to run the graphics. This is essentially the same software run on Flakey, (robot at SRI used for research in AI), behaviors using fuzzy control (there's lots more on Flakey in terms of sensor interpretation and higher-level control, but I haven't ported that from LISP to C yet). There are three example behaviors implemented, showing dumb obstacle avoidance and goal achievement. There's not much documentation yet, but I will get some out over the next few months. The intent is to make the simulator/controller suitable for a course in mobile robotics, and to have eventually a cheap physical platform that will imitate the simulator (or vice versa). Available by anonymous ftp from: ftp://ftp.ai.sri.com/pub/konolige/ filename: erratic-ver1.tar.Z Uncompress, untar and check the README file for installation. A collection of five tech reports on Flakey's fuzzy controller is also available at: ftp://ocean.ai.sri.com/pub/saffiott filename: flakey_papers_93.tar.Z ------------------------ Simderella 2.0 Version 2.0 of simderella is here. Major adaptations: - now features Imakefiles; - compiles & runs on Solaris and DEC Alpha; - some C bugs squashed; - bemmel can grab robot with mouse; - major improvements to documentation (i.e., an introductory article describing the package). - includes a stand-alone version of bemmel for drawing geometrical objects, with viewoint rotation. Figures can be dumped to xfig for later inclusion in your papers. Simderella is a robot simulator consisting of three programs: connel: the controller simmel: the simulator bemmel: the X-windows oriented graphics back-end Simmel is the part which actually simulates the robot. It performs a few matrix multiplications, based on the Denavit Hartenberg method, calculates velocities with the Newton-Euler scheme, and communicates with the other two programs. Bemmel only displays the robot. It is a fast general-purpose display method which places separate objects in space depending on the homogeneous matrices it receives from simmel. Connel is the controller, which must be designed by the user (in the distributed version, connel is a simple inverse kinematics routine. I didn't include my neural networks.) The three programs use Unix sockets for communication. This means that 1. you need sockets 2. all the programs can run on different machines Since data communication is high-level (meaning, in this case, that I do not send doubles, integers, and so on, but encode them first), running the programs on different architectures is no problem. In fact, it was thus designed that connel can, at the same time, control a real robot _and_ the simulated one. Simderella likes to sleep; that is, when nothing happens, no processor time will be used. The software is available as a compressed tar file from: site: galba.mbfys.kun.nl [IP 131.174.82.73] directory: pub/neuro-software/pd filename: simderella.1.0.tar.Z Extract the simulator from the tar file by typing at the Unix command line: zcat simderella.2.0.tar.gz | tar xf - or use your favourite extracting commands. In the simderella/ directory, type xmkmf make Makefiles make depend make The sub-directories are recursively visited and executables are compiled and linked. Supported architectures: Sun (SunOS and Solaris), SGI, DEC Alpha, HP700, 386 et al running Linux) If you're impatient, execute the thing as follows: cd bemmel; Zoscar & cd .. cd simmel; source env; simmel1 ns & cd .. cd connel; connel s all on one machine. Then type commands like fix-target 50 50 50 inverse 50 50 50 or move the mouse pointer in the bemmel window and press an `l' or `r' or `u' or `d' or .... [CMU ised Simderella recently to facilitate software development and testing of the Shuttle servicing robot before the hardware and mechanics are available to test the various parts of the controller. it has also been linked to TCA calls and worked very well - nivek] ------------------------ Public Domain SGI based simulator: This is a Silicon Graphics based delux robot simulator with lots of graphics Stuff. It was written by Andrew Conway and Craig Dillon as undergraduates for an electrical engineering project at the University of Melbourne. Not much in installation instructions. There is a latex manual with usage instructions and the mathematics. Warning: It is 4.3Mbytes compressed, and the US-Australia link is quite slow. Disclaimer: I [Andrew] haven't used this software for years. If it malfunctions, don't sue me or Craig, we don't guarantee it. ftp://krang.vis.citri.edu.au/pub/robot ------------------------ MODULSH: The complete programe is divided into three menus: Main, Drawing and Robot Menus. features such as selecting elements or the complete screen, rotating, translating, zooming, enlarging or reducing the scale and passing to the two dimensional drawing window from the three dimensional one are available. The Drawing Menu also offers many other possibilities like drawing three dimensional circles, ellipses, arcs, elliptical arcs, cylinders, cones, prisms, ellipsoids, toroids, etc. In addition to these, it is also possible to obtain hidden line drawing and to change the point numbers of the circular drawing elements. Whereas in Robots Menu, operations like selecting modules from the sub-menus, containing graphics, which concern body, wrist, hand systems and work spaces of robots, finding direct and inverse kinematics solution of these systems, point by point simulation of the robot motions, changing Denavit-Hartenberg parameters and joint freedom extremums from the menus can be performed. site: WSMR-SIMTEL20.Army.Mil and OAK.Oakland.Edu directory: pd1:<msdos.education> filenames: MODULSH1.ZIP Design and animation of robots, 1 of 2 MODULSH2.ZIP Design and animation of robots, 2 of 2 Author: Dr. Hikmet Kocabas Istanbul Technical University MKKOCABS%TRITU.BITNET@FRMOP11.CNUSC.FR MKKOCABS@TRITU.BITNET ------------------------ Robotica Contact: Mark W. Spong Coordinated Science Lab University of Illinois at Urbana-Champaign 1308 W. Main St. Urbana, IL 61801 tel: 217.333.4281 fax: 217.244.1653 net: spong@lagrange.csl.uiuc.edu http://uxh.cso.uiuc.edu/~gedept/ge/directory/faculty/Spong.html Robotica is a trademark of The Board of Trustees of the University of Illinois Robotica is a collection of useful robotics problem solving functions encapsulated in a Mathematica package. Utilizing Mathematica's computational features allows results to be generated in purely symbolic form. Robotica requires inputing the form of a table of Denavit-Hartenberg parameters describing the robot to be analyzed. Once the table has been entered, Robotica can generate the forward kinematics for the robot. The A and T matrices as well as the velocity Jacobian, J, are generated. Of course, it is possible to display and save to an external file all of the data generated. If the dynamics equations of the robot are also to be generated, the input must include the dynamics description data. Once the forward kinematics are produced, Euler-Lagrange dynamics equations can be calculated. The inertia matrix, Coriolis and centrifugal terms, Christoffel symbols and gravity vectors are all available to the user once the dynamics routines have run. Utilizing the forward kinematics results, Robotica can calculate the manipulability ellipsoids when supplied with a range of joint variable values. It is possible to generate and save a list of manipulability measures as well as display the ellipsoids with the robot on the screen. In addition, Robotica has the capbability of reading external simulation (e.g., SIMNON) output files and displaying the motion of the robot when sbjected to the sequence of joint variables described in the file. This requires that the robot has been input as a table of Denavit-Hartenburg parameters, and that the foward-kinematics routines have been executed. Robotics contains several functions that can be used to draw the robot in a specific configuration, or show the robot moving through a range of joint parameter values. Most of the graphics output can be animated if the Animation.m package is loaded The animations can be saved and later restored and viewed again. To simplify interactation with Robotica, an X-Windows based interface has been designed. This interface insulates the user from the inconvenient textual interface Mathematica provides. Requirements: Mathematica 2.0 or better. X-windows requires 2.1 or better. The University has requested that all users of Robotica sign and return a license agreement. This is mainly to keep a record of Robotica users for future upgrades, etc. The license agreement states that you may freely use and modify Robotica as you wish but that you may not sell it. You can obtain a postscript copy of this license agreement via anonymous ftp://ftp.csl.uiuc.edu/pub/robotica. Please print out the license agreement, sign and date it, and FAX it to me [Mark Spong] It is important that you also include your email address on the license agreement. As soon as I receive your FAX I will send you the Robotica package and the X-windows GUI. Also in the directory /pub/robotica is a postscript file containing the Robotica users manual which you may freely copy and distribute. Any comments that you have after using Robotica would be greatly appreciated. In addition, any questions you have or bugs you find can be reported to me and we will do our best to address them. _____________________________________________________________________________ [13.2.1] What is NuTank? NuTank stands for NeuralTank. It is a program to simulate complex networks and interactions. In this program one is given the shell of a 2 dimensional robotic tank. The tank has various I/O devices like wheels, whiskers, optical sensors, smell, fuel level, sound and such. These I/O sensors are connected to Neurons. The player/designer uses more Neurons to interconnect the I/O devices. One can have any level of complexity desired (640k memory limited) and do subsumptive designs. More complex design take slightly more fuel, so life is not free. All movement costs fuel too. One can also tag neuron connections as "adaptable" that adapt their weights in accordance with the target neuron. This allows neurons to learn. The Neuron editor can handle 3 dimensional arrays of neurons as single entities with very flexible interconnect patterns. One can also design a Glyph or drawing to represent the robot and/or obstacle. (or bug, worm, whatever) One can then design a scenario with walls, rocks, fat (fuel) sources (that can be smelled) and many other such things. Robot tanks are then introduced into the Scenario and allowed to interact or battle it out. The last one alive wins, or maybe one just watches the motion of the robots for fun. While the scenario is running it can be stopped, edited, zoom'd, and can track on any robot. One can designate a neuron group as the probe group and get a display of the neural activity of that group. This helps debug designs. The entire program is mouse and graphically based. It uses DOS and VGA and is written in TurboC++ There will also be the ability to download designs to another computer and source code will be available for the core neural simulator. This will allow one to design neural systems and download them to real robots. This feature may be in the Beta release, around August 94. The design tools can handle three dimensional networks so will work with video camera inputs and such. Eventually I expect to do a port to UNIX and multi thread the program. I also expect to do a Mac port and maybe NT or OS/2 The theory that I eventually want to test has to do with the self oscillating nature of combined subsumptive and standard neural nets. One can also work on flock and pack behavior. I have a paper I've written called Artificial Cognition that discusses a theory of the combination of regular neural nets and subsumptive networks. In the shareware file it is called Paper.ps and will need to be printed on a PostScript printer. You may get copies of it by sending $5 to Keene Educational Software. Getting NuTank: NuTank now has a shareware version. It is about 300k bytes compressed. The file is nutank.exe and is a PKZip executable for dos machines. It must be put in a directory called C:\nutank To unpack nutank firts put nutank.exe in C: C: mkdir nutank cd nutank ..\nutank.exe -d After it unpacks nutank.exe is the program If anyone would like to put it on their server feel free to do so. If you put the shareware on your sever please tell me so I can send you updates. Nutank shareware is available vie the ftp sites cher.media.mit.edu:/pub/incomming/NuTank or ftp.essex.ac.uk:/robot/Simulators/NuTank The shareware version has the ability to write to disk disabled. Feel free to pass the shareware version around. The regular version costs $50 (includes a printed copy of the paper) and can be had by sending $50 US to Richard Keene Keene educational Software 8155 Lone Oak Court Littleton, CO 80124 After Oct 3rd 1994 I'll be working for the Park City Group and can be reached at 801-649-2221 NuTank, Copyright Richard Keene 1994, All rights reserved. _____________________________________________________________________________ [14] What Real-Time Operating System should I use? [14.1] Commerical RTOS [14.2] Research RTOS For general discussion of this topic see news:comp.real-time and news:news.answers for the complete RTOS FAQ. ftp:://rtfm.mit.edu/pub/usenet/news.answers/realtime-computingfaq Here is a complete list of many RTOS'. ftp://rtfm.mit.edu/pub/usenet/comp.realtime/Comp.realtime:_A_list_of_real-time_operating_systems_and_tools_(LONG) Below is a list of both commercial and research Real-Time Operating Systems (RTOS) which are being used around the world for implementing robotic systems. Only the names and addresses of the distributors are included. Since the available features of each are constantly changing, and the advantages and disadvantages of each are greatly a matter of opinion and target application, no such descriptions are given. ------------------------------ [14.1] Commerical RTOS ----- Chimera Chimera itself is not available for anonymous FTP as it has become a commercial product marketed by a Pittsburgh based company called K2T Inc. (pronounced K-squared-T). Onika is tightly bound to advanced features in Chimera and hence is not currently suited for use on other platforms. However, users of Chimera do receive a free copy of Onika. However, there are several papers written by the creators of these software packages that _are_ available via both ananymous FTP and via the WWW. You may obtain Chimera and Onika papers from the WWW via the following URL: http://www.cs.cmu.edu:8001/afs/cs.cmu.edu/project/chimera/www/home.html This link is to Chimera information, but you may also access Onika information via links in this document. You may FTP some Chimera and Onika papers as compressed PostScript files from CMU: ftp://ius4.ius.cs.cmu.eduusr/chimera/public/ If you are interested in purchasing Chimera, please contact Eric Hoffman of K2T Inc. directly: Eric Hoffman, Chief Engineer K2T Inc. Suite 205, One Library Place Duquesne, PA 15110 tel: 412.469.3150 fax: 412.469.8120 ----- ControlShell Real-Time Innovations, Inc. 954 Aster, Sunnyvale, CA 94086 tel: 408.720.8312 fax: 408.720.8419 contact: Stan Schneider email: stan@rti.com ControlShell is an Object-Oriented Framework for Real-Time System Software Complete object-oriented real-time software environment. Graphically build your system from reusable components. Readily include powerful rule-based event responses. Easily share data between networked processors. The real-time framework for the future! ControlShell is a next-generation CASE environment for real-time system software development. ControlShell's modular, component-based structure, powerful graphical tools, and integrated data management provide a unique approach to real-time software development. With ControlShell, you can: * Build your system from reusable components with the graphical Data-Flow Editor. Select and connect your components, set parameters, and build your run-time system with a few mouse clicks. * Add new components with the graphical Component Editor. Automatically generate C++ source code to interface your new component to the system. * Create structured strategic programs with the graphical State-Machine Editor. Combine rule-based transition conditions, true callable sub-chain hierarchies, task synchronization and event management. * Manage complex system mode changes with the graphical execution Configuration Manager. * Perform real-time mathematics with the complete real-time matrix package. * Take advantage of an ever-expanding library of generic and reusable components, including controllers, estimators, filters, signal generators, trajectory generators, and more. ----- iRMX III Runs on Intel 80X86-based computers U.S.A.: Intel Corporation 3065 Bowers Avenue Santa Clara, California 95051 tel (408) 987-8080 ----- LynxOS Runs on wide variety of platforms, including Motorola, Intel, Sun, and Hewlett Packard. Lynx Real-Time Systems, Inc 16780 Lark Los Gatos, CA 95030 tel (408) 354-7770 fax (408) 354-7085 ----- OS-9 Runs on Motorola MC680X0-based single board computers. Microware System Corporation 1900 N.W. 114th St. Des Moines, Iowa 50322 tel (515) 224-1929 ----- pSOS+ Runs on a variety of Motorola 680X0 and 88100, and Intel 80386 computers. Requires a host workstation or personal computer if pASSPORT+ real-time programming environment is to be used. Software Components Group, Inc. 1731 Technology Drive San Jose, CA 95110 tel (408) 437-0700 fax (408) 437-0711 ----- E-VENIX & VENIX VenturCom Inc 215 First St. Cambridge, MA. 02142 P: (617) 661-1230 I: info@vci.com Product runs on ix86 platforms and PC/104 systems. Product is real UNIX, SVR3.2 & SVR4.2. Workstation version requires ~4MB, 120MB, 80{3|4}86 processor. Embedded version requirements vary depending on features used. Embedded product allows for completely ROMed UNIX systems, from read-only root to stand alone applications. ----- VRTX Runs on a wide variety of processors, including Motorola 680X0, Intel 80X86 and 80960, National Semiconductor series 3200. Ready Systems 470 Potrero Avenue P.O.Box 60217 Sunnyvale, CA 94086 (800) 228-1249 fax (214) 991-8775 ----- VxWorks Runs on a wide variety of MC680X0 and SPARC-based single board computers. Requires a workstation for program developments. Widely used in Unix environments for realtime work. Wind River Systems Inc. 1000 Atlantic Avenue Alameda, CA 94501 tel: 510.748.4100 or 800.545.WIND (9463) fax: 510.814.2010 <inquiries@wrs.com> Tools related to VxWorks: Real-Time Innovations, Inc. 954 Aster, Sunnyvale, CA 94086 tel: 408.720.8312 fax: 408.720.8419 contact: Stan Schneider email: stan@rti.com Product name: StethoScope Overview: Real-time networked graphical monitoring and data acquisition. Category: Software, Development tools Highlights: Real-time data collection and display. Monitor any program variables. Export data to MATLAB and MatrixX. Friendly multi-window environment. Gain insight into what's happening in your system. StethoScope is a real-time graphical monitoring, performance analysis, and data collection tool for VxWorks. Use it to watch any of your program variables evolve in real time; any value in memory can be monitored. StethoScope opens a window into your application; it shows you what's really happening. Product name: ScopeProfile Overview: Real-time dynamic execution profiler. Category: Software, Development tools Highlights: Detailed procedure-by-procedure analysis of CPU usage. Tree or flat structure model. Quickly spot performance bottlenecks. Minimally intrusive. Run your code at full execution speed. No special compilation. Analyze already running code. ScopeProfile is a dynamic execution profiler for VxWorks. It shows you exactly where you're spending your CPU cycles. Product name: RTILib Overview: VxWorks tool and utility package. Category: Software, Development tools Highlights: Memory integrity and leak testing Re-entrant shell program Execution tracing utility Fast buffer management RTILib is a collection of focused utilities and debugging tools. ----- QNX Distributed, POSIX, real-time microkernel for Intel x86 processors. Supports fault tolerance and also hosts MS-Windows in Standard mode QNX Software Systems 175 Terrence Matthews Cr. Kanata, Ontario K2M 1W8, Canada tel: 613.591.0931 x111 fax: 613.591.3579 QNX Software Systems Westendstr.19 6000 Frankfurt, Germany tel: 49 69 97546156 x299 fax: 49 69 97546110 Two QNX papers are available via anonymous FTP: An Architectural Overview of QNX A Microkernel POSIX OS for Realtime Embedded Systems ftp://ftp.cse.ucsc.edu/pub/ filenames: qnx-paper.ps.Z, qnx_embed.ps.Z ------------------------------ [14.2] Research RTOS ----- Harmony Runs on MC680X0-based single board computers Canada: Division of Electrical Engineering National Research Council of Canada Ottawa, Ontario, Canada K1A 0R6 ref: NRCC Tech Report No. 30081 ----- REXIS REXIS (Real-time EXecutive for Intelligent Systems) is a small multi-tasking preemptive real-time executive for implementing control programs for intelligent systems such as robotics and distributed networks. It provides functions for managing tasks, memory allocation, message ports, timers, and event processing. It is distributed as shareware at a low cost to hobbyists / students. The current requirements for compiling and running REXIS is an ANSI C HC11 cross compiler and a HC11 target with at least 24K of RAM. Other targets are under consideration. For more information, please contact Richard Man P.O. Box 6 North Chelmsford, MA 01863 (phone+FAX) (508) 452-5203 imagecft@world.std.com, or man@labrea.zko.dec.com ----- Robot Control C Library (RCCL) A robot programming environment embedded in C/UNIX. A graphics simulator is provided which supports the PUMA, Stanford, and `Elbow' manipulators. The system can be compiled on SGIs (so the Indigo should be fine), and the graphics runs under either X or GL. You can get the system from RCIM for a small fee to cover copying and shipping. If you are interested send mail to: John Lloyd Research Center for Intelligent Machines lloyd@curly.mcrcim.mcgill.edu McGill University, Montreal tel: 514.398.8281 fax: 514.398.7348 _____________________________________________________________________________ [16] Survey of Mobile Robot Development Environments This list provides a look at mobile systems that people are using. The list includes robot base information, as well as hardware and software environments used in the systems. This is an updated and abridged survey compiled by Willie Lim <wlim@lehman.com> The complete file, which includes a list of organizations and the original messages can be ftp'd from ftp://ftp.ai.mit.edu/pub/mobot-survey.text ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; ;;; ;;; ;;; ;;; RESPONSES TO INFORMAL SURVEY ON DEVELOPMENT ENVIRONMENTS ;;; ;;; FOR MOBILE ROBOTS ;;; ;;; ;;; ;;; ;;; ;;; ;;; ;;; Updated: Tue Dec 6 08:59:45 1994 <wlim@lehman.com> ;;; ;;; Created: Sat May 23 09:37:24 1992 <wlim@lehman.com> ;;; ;;; ;;; ;;; Maintained by: wlim@lehman.com (for now) ;;; ;;; ;;; ;;; Please send updates, additions, corrections, etc. to: ;;; ;;; wlim@lehman.com ;;; ;;; ;;; ;;; A complete version of this survey including detailed ;;; ;;; descriptions of the various projects is available via ;;; ;;; anonymous ftp from the host ftp.ai.mit.edu as the file ;;; ;;; /pub/mobot-survey.text. ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Organization Robot Development Languages & Type HW Environment SW Enviroment ============= ==== ============== ============= Alcatel Alsthom Indoor robot SPARC II, VME proc VxWorks, MOTIF Recherche (AAR) Outdoor robot Brown U. a)Mobile robots SPARC I & II, OS/9, GNU Emacs, Xlib, VME 68030 MOTIF, Forth, C, C++ b)2 RWI B12's Sparc 10s/Solaris offboard UNIX, Motif, C++, Lisp, Rex, X c)2 RWI B24's 486 Linux onboard, arms CMU a) SM^2(walker) VME 68020 & 68030, Chimera II RTOS, C, Sun Sun tools b) AMBLER VME 68020 & 68030, MOTIF, VxWorks, SPARC II, Iris X windows, C c) Mobile Mani- Z8088s, Sun IPC & ELC, X Window, Lisp, C, Hero pulator NeXT Basic d) Mobile robot SPARC, Iris, Mac, X windows, Openwindows, VME, Maspar, Titan VxWorks, Chimera RTOS, TCA, GIL, LISP e) Navlab Sun-4 X windows, C Colorado Sch. Denning MRV-3 Sparc IIs, IPXs, C, X11, Khoros, potential fields of Mines IBM RS/6000s X11 visualization tool (homemade) Colorado St. 6-legged robot 68HC11EVM, AT C Cornell U. 2 mobile robots Gespak 68000, Intel Scheme, Lucid Lisp (robot with 80c196, Sun(?) tank-tread base coming) Cray Research(?)Mobile robot MC68HC16EBV, 386 Assembler Georgia Tech Denning DRV-1 SUN IPC, Decstation, X windows, C, & MRV-II Microvax II Lisp Grumman CRC SmartyCat Mac II's/IIci's, C, CLOS, LISP, SAL (Cybermotion uExplorer, SGI VxWorks(soon) K2A) 68030 VME board(soon) LLV (Grumman SGI, 68030 VME board, C, CLOS, LISP, SAL Long Life Veh., mini-boards. the US Postal Truck) IBM TJ Watson TJ, TJ2 Symbolics, RS/6000, LISP, CLOS, CLIM, (1989?-1992) 286, 386, Suns C, X-windows, MOTIF, GNU Emacs ISX Corp Subsumption Mac II cx's/ci's C(?) JPL 7 robots Suns to 6811 RCCL, ALFA McGill U Mobile robot Sparcs, mc68hc11, PC GNU, X, Small-C C, C++ QUADRIS SUNs, Macs, C-40, 68K C, X-windows, IRIS GL Michigan Tech. Tracy 6502, Apple IIe, SUN, C, Assembly U. 68HC11 Unnamed(Andros) Minirobots 6811 MIT 20 robots Mac II & IIsi, HC6811 Behavior Language GOPHER (ISR R2) 68332, Mac, Sun GCC, Behavior Language, Lisp, X-windows Polly VME, 6811, Mac Senselisp(Scheme) SOZZY(homemade) 6811, Mac Lisp, Behavior Language MITRE Denning MRV-1 MacQuadra, uExplorer Lisp, REX/GAPPS, C, C++ Northeastern U. Lobster Robot HC11, Mac C, Pascal, Assembly Phaeton Sun 4/330, Mac C, epsilon (Cognex), (Denning MRV3) X-windows NRC of Canada EAVE Mac II's, 68020's C, HARMONY OS, MacAPP (Cybermotion) NC State Mobile robot VME 68020 & 68040, OS/9, P/NET Osaka U. Homemade VME 68030, SUN IPX, C, X-windows Sparc 2 Purdue U. PETER Sun4, 68030 C, VxWorks (Cybermotion) SRI FLAKEY Sparc10/30, Z80 Lucid Lisp, C, X-windows Stanford Landmark based Mac IIci C, LISP Navigation (Nomadic) Swiss FIT Mobile robot Mac MacMETH, Modula-2 U of Central a) 6-leg walker Commodore 64 SuperC, C b) 6-leg walker Amiga 500 C U of Edinburgh a) ALDER 8052, SUN, PC Basic (Fischertecknik) b) CAIRNGORM 68000, SUN C (Fischertecknik) c) Bill (RWI) PC, transputers C d) Ben Hope(RWI) transputers C e) (LEGO based) 68000 C, CPL U of Mass., Denning DECstation 5000, C, LISP Amherst Sparcstation U of Michigan BORIS (TRC) 486, Decstations, SGI, Borland C++, FORTH, DOS RS/6000 CARMEL (K2A) 286, 486, (ditto) Borland C++, FORTH, DOS MAVERIC 486, Sparc 10, Lisp, GCC, Borland C++, X, DOS Datacube, (ditto) U of New Underwater Sparcstation, VxWorks, C(?) Hampshire robots CMOS VME boards U of South Cybermotion K2A Z-80, 68000 PASM, GEHPL, UNIX, Carolina & K3A, Heathkit DOS/Windows Hero 1 ET-18 U Wash. Denning HP 9000 series 300's, Gensym G2, OS/9 68000 LLAMA (Forth), Lisp, C Worcester Poly- James NEC 76310, 68HC11, Assembly, Small-C (DOS) technic Inst. (RWI B12) Gateway 2000 PC Wright Lab, Hero 2000 286 MS C (DOS), Assembly Wright-Pat. Air Force Base VTT (Technical Akseli HP-1100, 386 MS-DOS, LynxOS (soon) Research Center C of Finland) ______________________________________________________________ [17] Small development platforms [17.1] What is the Miniboard? [17.2] What is the F1 Board? [17.3] What is the Bot Board? ----------------------------- [17.1] What is the Miniboard? New version: Miniboard 2.1 extended - The Mini Board is an outgrowth of the MIT 6.270 robot course and design project. It is a small and inexpensive design for a controller board based on the ubiquitous (yet sometimes hard to find) 68HC11 micro-controller. The Mini Board 2.1 Extended is the latest version of the Mini Board. It is based on the Mini Board 2.0 Extended (see file pub/miniboard/docs/mbextend.txt), and includes the following new features: * full six-wire SPI jacks include power, ground, and all four SPI wires. * optional diode protection prevents reverse-polarity voltage input when using DC power jack. * power and ground on Port A headers may be bridged to motor power and ground, allowing RC servos to be plugged directly into the Port A header (when using a 5.5 to 6v power supply). * extra space between PLCC socket and female header connectors to allow for newer, slightly larger PLCC sockets. * mounting holes drilled for single RJ11 jack (for RS-232 serial), saving money on triple RJ11 jack if SPI ports are not to be used. Download the file pub/miniboard/docs/mb21ext.PS.Z to see the silkscreen of the new board. The MINI BOARD 2.1 is a complete embedded computer board for robotic applications. It can directly power four DC motors and receive inputs from numerous sensors. Its miniature size (smaller than a business card) makes it suited well for mobile applications as well as other embedded control. It can be programmed in 6811 assembler code or C for stand-alone operation, or it can serve as a serial-line based controller operated by a desktop computer. * overall dimensions: 3.3" by 1.86", smaller than a business card. If desired, an off-board serial connector can be used, allowing an additional .6" of board length can be chopped off. * nearly all parts can be purchased from Digikey (including all connectors and switches). Extensive use of resistor packs minimizes component count. * uses Motorola 68hc811e2 microprocessor with 2048 bytes of internal, electrically erasable PROM and 256 bytes of RAM. * four motor drivers for bidirectional control of small DC motors (up to 600 mA current, 36 volts each motor). * eight analog inputs; eight digital inputs or outputs; several timer and counter I/O pins, all broken out to convenient header ports. * on-board 5v regulator allows board to be powered by any DC power source from 5.6 to 36 volts. * RS-232 compatible RJ-11 port for communication/program download between host computer. * two modular high speed serial jacks, allowing networks of multiple MB 2.0's to be constructed using common 4-wire phone cable. Multiple-mastering bus protocols supported. * optional battery level monitoring using voltage divider from supply voltage before regulation. * XIRQ line broken out to a pad: when this line is given 12.5v, an 'hc711e9 chip with 12K of EPROM can be programmed in place. * MS-DOS, Macintosh, and Unix software provided for downloading programs to board. 6811 monitor program provided for recording changes in sensor state, controlling motors and interacting with other board features over serial line. * C/assembler libraries provided for code development using Dunfield Development Systems' Micro-C compiler, and ImageCraft's freeware icc11 C compiler. A fifty-page manual describing how to build and operate the Mini Board is on-line on the FTP server: ftp://cherupakha.media.mit.edu/pub/miniboard/docs People who don't have access to anonymous FTP can do FTP-by-mail, provided as a public service by DEC. Send a message containing the single word "help" to "ftpmail@decwrl.dec.com" for instructions. Also on-line is software for programming the Mini Board from MS-DOS, Macintosh, and Unix machines. * Douglas Electronics, Inc. 2777 Alvarado Street San Leandro, California 94577 USA tel: 510.483.8770 bbs: 510.483.6548 fax: 510.483.6453 Douglas Electronics, a Macintosh PCB CAD software house and a commercial PCB fab facility, is a new distributor of blank Mini Board PCBs. [Thanks to Bill Schuler@douglas.com] Pricing for the new mini-board is as follows: 1 board only ................. $ 10.00 2 to 9 boards ................ 7.50 ea. 10 to 50 boards .............. 6.25 ea. 50 and over .................. 5.00 ea. There is also a dollar volume discount on Douglas' breadboard products, that applies over and above the per-board quantity discounts, as follows: $ 500 5%, $1000 10%, $2500 15%, $5000 20% For more info see: ftp://cherupakha.media.mit.edu/pub/miniboard/douglas.txt -Two individuals are independent suppliers of Mini Board technology: * Gregory Ratcliff <gratclif@magnus.acs.ohio-state.edu>, 1763 Hess Boulevard, Columbus, Ohio 43212; (614) 487-0694 (late evenings EST). Greg sells blank boards for $6, parts kits, and assembled boards. Please contact him for information. * Mark Reeves <robotek@jabba.cybernetics.net> 1117 Braemar Court, Cary, NC 27511; BBS and voice (919) 481-3170 (voice hours from 5-7 pm EST). Shipping - all orders will be shipped ASAP, we do not need to wait for a certain number of orders (although there may be delays while certain parts are gotten). If a delay happens you will be notified by email or postcard. No check or MO will be cashed until the order is ready to ship. PRICES (subject to change without notice) All kits include a PCB, a kit without a PCB will be $5.00 less. A kit without the 1 RJ11 adpt will be $2.50 less, a kit without the 3 RJ11 adpt will be $5.00 less. K0 - a super basic kit, does not include any RS232 stuff, or motor drive items, inductors, or most of the other discrete components, it does have a PCB, CPU, socket, one 36 pin header, and a few other items. Good for TTL level RS232, via some other chip, for the person wants to use the board for expansion purposes, or whatever. Contact us for price. K1 - basic kit all parts needed to get a board up and going, one RJ11 jack, no headers, for the true hobby person $41.00 K2 - same as above, but has all header connectors (3 female, 2 male - 36 pin header connectors) $46.50 K3 - basic + motor controller the full kit with all needed parts, with all LED's and motor controller chips, one RJ11 jack $57.50 K4 - full kit same as K3, but has the 3 RJ11 jacks for interconnecting with other boards $60.00 B1 - bare PCB board, double sided, extended version silk screened parts location, etc. $5.00 J1 - a DC power jack and power switch for the board. Use if the screw power connector is not used; this would work with a plug in power supply. Note- these items are sold at cost, they are not cheap $6.50 ASSEMBLED KITS Add $25 to any kit to get it built, add an B to the kit number, i.e. K4-B or K4-B-A for the 68hc11A1 version of the kit. All assembled boards will have all parts soldered on them, but to meet FCC requirements there will be minor work to be done ( you have to install on chip) NOTE: the basic kits do NOT include the motor controller chips or the motor LED's, they do have the RS232 parts, they are for people who want to use the board for things other than robotics. No speaker or sensors are included. All motor controller chips are the TI version, 1A drive current. All prices are subject to change without notice; please e-mail to check if prices have gone up or down since this posting. Mark is a supplier of the recent board revision called the "Mini Board 2.0 Extended." This version of the Mini Board includes a power switch and DC power jack for ease of use. Please see the file pub/miniboard/mbextend.txt for more information. Hard copies of the Mini Board manual may be ordered by sending a check payable for U.S. $5 to "MIT Epistemology and Learning" at Epistemology and Learning Publications, MIT Media Laboratory, 20 Ames Street E15-301, Cambridge MA 02139. There is now a mailing list for discussing the board. The purpose of the mailing list is to discuss robot controller boards, and robot control in general. In particular, the list will be used to support the Mini Board 2.0 and 6.270 board design by Fred Martin and Randy Sargent of MIT. However, any and all traffic related to robot controllers is welcome. Administrative address: listserv@oberon.com (send a message containing the word "help" for directions) Mailing list address: robot-board@oberon.com Maintainer: <gkulosa@oberon.com> Please DO NOT send administrative things to the main mailing list address, as then everyone will get annoyed. _____________________________________________________________________________ [17.2] What is the F1 Board? A PCB board set designed around the 68HC11f1 microprocessor, which I have made available as a non-profit enterprise to all you folks on the net. To help those of you in the US, Daniel Mauch of the Seattle Robotics Society agreed to act as a distributor. Well, my first shipment of these PCB's to Daniel lasted about a week, I didn't realise they were going to be so popular! He has now received the second shipment from me, so if anyone is interested in these boards please Email Daniel at <dmauch@seanews.akita.com> If you missed any of my original postings, here again are the details of the boards: 'F1 Board: Size 118 x 80 mm (4.6" x 3.2") Connectors: Power 6.5 - 35vdc (or 5vdc if you jumper the 7805 socket) RS485 serial communications RS232 serial communications SPI interface (Same as Miniboard connectors but Master/Slave switchable) 8 Analog inputs Port A connector Control bus connector for additional boards Configuration: 32K Ram memory 32K EPROM (or another 32K Ram - switch select) MODA & MODB jumpers Analog Vrh & Vrl jumper to +5 & 0v or user selectable Motor Board: Size 107 x 59 mm ( 4.2" x 2.3") Connectors: 8 Digital inputs 8 Digital outputs 4 x DC motors 2 x Stepper motors (<1.5 Amps each) 2 x R/C servo motors Configuration: 5 x base address selections (allows for multiple boards to be used) Stepper / Servo switch selectable Separate power supply for DC and Stepper motors. Cost: F1 board $17 Motor board $13 EPROM (w/Buffalo) $11 Postage $5 This board was designed primarily for embedded control and small robotics applications, and as such it is as versatile as I could get it. For more details there is complete documentation (in postscript format) in the file ftp://cher.media.mit.edu/pub/incoming/F1/f1doc.zip Dept. of Mech. Eng. |Pete Dunster University of Wollongong |Tel +61-42-213597 Northfields Ave |Fax +61-42-213101 Wollongong |Email p.dunster@uow.edu.au N.S.W. 2522 AUSTRALIA | _____________________________________________________________________________ [17.3] What is the Bot Board? The BOTBoard is a single chip microcomputer board designed for general use, and robotics applications. The BOTBoard uses the popular 68HC11 microcontroller in a minimum configuration, and is easily programmed from your PC. Engineered to be small, the BOTBoard is also powerful and flexible. Each BOTBoard is 2" X 3" with a 1" X 2" prototyping area. Special BOTBoard Features: . Four R/C Servo Ports. . Auto start jumper. . Reset Switch and low voltage circuitry. . 1" X 2" proto-typing area, with power bus strips. . Easy to use Networking Port (SPI). With Master/Slave selection. . Powered RS232 Port (TTL level) for serial communication. . Pull up resistors on IRQ and XIRQ. . All I/O pins on .100 grid headers. . Single sided circuit board design. . Uses either the MC68HC11 or MC68HC811 . . Mounting holes that can be used for stacking. . Power supply connector. The BOTBoard is a bare circuit board that was designed to give the most amount of flexibility for the least cost. The BOTBoard manual contains parts list, building instructions, ordering information, schematics, and application notes. You can assemble the BOTBoard in less than a half hour, with a total cost of parts being about $20. BOTBoard = $5.95 each or three for $15. Shipping = $1.25 plus .25 for each board. Marvin Green 821 SW 14th Troutdale, OR 97060 (503) 666-5907. _____________________________________________________________________________ [18] What is the XXX Microcontroller? Which microcontroller should I use and what are the differences between them? What about motor controllers and motor drivers? There are a wide variety of microcontrollers that can be used in robotics projects. Some of the most popular are 6811's (Miniboard and many single board computers), 80186, and PIC's. This topic engenders hot debates of the merit of one chip over the other. Therefore, the best way for you to decide is to understand your problem requirements and see which devices fit your needs. At that point, you can look at issues of support platforms, cross-compilers, cost etc to make the best decision. Related newsgroups include: comp.sys.intel, comp.realtime, sci.electronics, alt.comp.hardware.homebuilt A FAQ devoted to Microcontrollers can be found at the following: ftp://rtfm.mit.edu/pub/usenet/comp.answers/microcontroller-faq/primer Maintainer: Russ Hersch <sibit@datasrv.co.il> In this FAQ, just brief overviews and pointers are provided for these families of microcontrollers and related devices. [18.1] Motorola 68XX [18.2] Motorola 683xx [18.3] Intel 80C186 [18.4] Intel 8051 [18.5] Intel 8096 [18.6] Microchip PIC16/17 [18.7] Parallax BASIC Stamp [18.8] National Semiconductor LM628/629 [18.9] Hewlett-Packard HCTL 1000, 2000 [18.10] Motor Drivers ----- Basically there are three kinds of "boards" out there that are of interest to design engineers and the definitions are necessarily broad: 1) The evaluation board. This is a board designed by the manufacturer of a part to demonstrate its features. Using such a board a DE can decide whether the part will meet their needs for the design they are creating. Generally somewhat expensive (because they are produced in relatively small numbers) except when the part is being 'pushed' by the manufacturer and there is some sort of promotional deal going on. Often the evaluation board will have some sort of breadboard area on the board for custom circuitry. 2) The Single Board Computer or SBC. These are generally produced by a third party using some manufacturers chip. The are generally pretty flexible but may not 'expose' all features. SBCs come in all sizes and price ranges, some are availabe in kit form. Many have development tools available for them. 3) The Embedded processor. These are generally boards dedicated to some particular function (like driving a stepper motor, running a modem etc) and are usually available pretty cheaply on the surplus market. Unlike SBCs there are rarely any design tools available to use with them but they can be quite inexpensive. A FAQ devoted to Microcontrollers can be found at the following: ftp://rtfm.mit.edu/pub/usenet/comp.answers/microcontroller-faq/primer Maintainer: Russ Hersch <sibit@datasrv.co.il> ------------------------------ [18.1] Motorola 68XX A 68HC11 is an 8-bit data, 16-bit address microcontroller from Motorola, with an instruction set similar to the older 68xx (6801, 6805, 6809) parts. It has several on-chip resources including digital I/O, timers, PWM, A/D RAM, various types of ROM, and synchronous and asynchronous communications channels (RS-232 and SPI). It can easily be integrated into single-chip applications. Less than 20ma current draw. Good freeware assembly-language tools are available, as well as several good commercial C compilers. It is widely used because it is very inexpensive and the availability of developments tools makes it very attractive. Moto nows offers an evaluation kit that includes DOS and Mac compatible software, low-power design tutorial and extensive technical literature. M68EBLPIIKIT has batteries included and has 68HC11E9 microcontroller, LCD display, Moto LCD driver, RS232 line driver/receiver chips, wire-wrap area for custom work, simple development platform and development code. Includes assembler, several examples, and extra crystals. $199.11 through 4/22/94. For a lot more detail see the 68HC11 FAQ at: ftp://rtfm.mit.edu/pub/usenet/comp.realtime/68hc11_microcontroller_FAQ The FAQ is also regularly posted to several newsgroups. To subscribe to a listserv mailing list for 68HC11's send the following message to listserv@bobcat.etsu.edu subscribe mc68hc11 <your name here> There is also a FAQ on news:comp.sys.m68k. This FAQ covers the Motorola M680x0 and the MC68300 series of microprocessors. There are sections on the VME bus and PowerPC parts. Sources for software for all Motorola products including the HC11 series is included. This list also points to resources provided by Motorola to its customers. Much of this FAQ is applicable to parts other than the M68K. This FAQ is available on the World Wide Web at http://www.comlab.ox.ac.uk/archive/cards/m68kfaq.html. ">bode.ee.ualberta.ca:/pub/motorola/m68kfaq*">ftp://bode.ee.ualberta.ca:/pub/motorola/m68kfaq* ">ftp.ee.ualberta.ca.:/pub/motorola/">ftp://ftp.ee.ualberta.ca.:/pub/motorola/ ">ftp.luth.se:/pub/misc/motorola/faq/m68kfaq*.gz">ftp://ftp.luth.se:/pub/misc/motorola/faq/m68kfaq*.gz Although there are reports of shortages of the 68HC11, presumably because of large customers, here is one vendor who is reported to have significant stock: Contact Beall and Glenn at 800-874-4797. MC68HC11A1 - $2.50 each. MC68HC11E1 - $3.00 each. MC68HC11E1 - $3.00 each. ( This is a 12Mhz version.) If you order over $20 the shipping is free. They also take VISA. ------------------------------ [18.2] Motorola 683xx The 683xx family from Moto are highly integrated CPU's. Several have onboard RAM (eg, up to 2K), none have on-board ROM, but they do have timers, software programmable chip selects, etc, making it possible to build very small but complete systems. 68302: Designed for communications, especially ISDN. On-board nice serial controller. 68000 CPU, some memory. 68330: Has CPU32, which is in between a 68000 and a 68020. Not much else. 68331: Add standard async serial controller. 68332: Add separate Time Processing Unit and some RAM. The TPU can do things like off-line PWM processing. Nice general package. 68340: Delete TPU, add DMA controller. ------------------------------ [18.3] Intel 80C186 An 80C186 is a evolution from the 8086. It is an embedded processor sold by Intel, and has the same instruction set as the 8086, with the additional "real-mode" instructions of the 286. It has the same 16-bit data and 20-bit address bus structure of the 8086. The 80C188 is an 8-bit data bus version, just like the 8088 (of PC & PC/XT fame). For embedded systems, it is much easier to use than the 8086. It has an on-chip timer system, interrupt controller, DMA controller, and clock generator. For DRAM operation, it also has an integrated DRAM refresh generator. However, it has no on-chip I/O, nor does it have any memory on-chip. There is, however, extra circuitry for selecting external memory with a minimum of extra logic. Can be programmed using most DOS compilers and assemblers, but requires a linker that knows about locating code in absolute memory. The '186 is not as accessible; it is harder to set up, the tools cost more, and robotics & control resources have to be added externally. The timers can be configured for PWM or pulse timing, It does, however, run at higher speeds, have more accessible memory, and can be hooked up to a floating-point co-processor (C187). It looks a lot like a DOS machine. This may be important when software is run on multiple platforms and also helps with the learning curve. ------------------------------ [18.4] Intel 8051 A typical 8051 contains: - CPU with boolean processor - 5 or 6 interrupts: 2 external, 2 priority levels - 2 or 3 16-bit timer/counters - programmable full-duplex serial port (baud rate provided by one of the timers) - 32 I/O lines (four 8-bit ports) - RAM and ROM/EPROM in some models The 8051 and varients are now sourced by more than a half-dozen companies including Intel, AMD, Dallas, Signetics, Siemans and others. The 8051 FAQ can be found at: ftp://rtfm.mit.edu/pub/usenet/comp.realtime/8051_microcontroller_FAQ It includes 8051 ftp sites, public domain langauges, commercially available software and publications for the 8051. ------------------------------ [18.5] Intel 8096 It is 16 bit, many registers, internal RAM, the usual compliment of on-board peripherals (serial, A/D, pwm, timer/counters, etc) ------------------------------ [18.6] Microchip PIC16/17 Microchip Technology Corporate Office 2355 West Chandler Blvd Chandler, AZ 85224-6199 tel: 602.786.7200 fax: 602.899.9210 UK: Arizona Microchip Technology tel: 44 062-885-1077 fax: 44 062-885-0178 Japan: Microchip Technology tel: 81 45/471-6166 fax: 81 45/471-6122 CMOS field-programmable microcontrollers - PIC16/17. high performance low cost and small package size. Large numbers are used in consumer electronics and automotive applications, computer peripherals, security and telecommunication applications. A FAQ on the PIC exists and is posted regularly to the following newsgroups: comp.realtime, comp.robotics, sci.electronics Maintainer: Tom Kellett <Tom@takdsign.demon.co.uk> A PIC list address is: pic@figment.mit.edu Administrative matters go to: pic-request@figment.mit.edu Internet PIC sites are at: ftp.sics.se:/pub/mchipsoft/mchipsoft ftp.funet.fi:/pub/microprocs/PIC PIC16CXX and PIC17Cxx are 8-bit microcontrollers that use a high-speed RISC architecture.The PIC17CXX is probably the faster 8-bit controller. 16-bit instruction word and vectored interrupt capabilities.You can add external program memory, up to 64K words. The PIC17C42 has a number of counter/timer resources and I/O handling capabilities. Features include: timers, embedded A/D, extended instruction/data memory, inter-processor communication and ROM, EPROM and EEPROM memories. assemblers, linkers, loaders, libraries and source-level debuggers are available. Digi-Key carries PIC's (See Parts Suppliers) A simulator is available from Compuserve from the MicroChip BBS. The simulator is SIM42000.zip and the assembler is MPA10200.zip. You do not have to be a member of CompuServe to get to the MicroChip BBS. 1. Set modem to 8N1 2. Dial your local Compuserve phone number. 3. Type <ENTER> and a garbage string will appear because compuserve is expecting a 7E1 setting. 4. Type +<ENTER> and Host Name: will appear. 5. Type MCHIPBBS<ENTER> and you wil be connected to the Microchip BBS. Vendors of PIC boards: These are from reviews by Chuck McManis <cmcmanis@firstperson.com>: Micro Engineering Labs P.O. Box 7532, Colorado Springs, CO 80933 tel: 719.520.5323 contact: Jeff Schmoyer MEL has designed a couple of PC boards for prototyping PIC systems PICProto 18 - $9.95 US including shipping in the US. This board is 1.5" by 3", double sided, solder masked, and has plated through holes. the top 7/8" x 1.5" of the board (oriented with the narrow side "up") consists of an 18 pin socket print, holes to conviently mount either a crystal or RC oscillator and a set of holes to mount a 5v regulator, either the TO-220 type or the low power TO-92 type as used on the Miniboard. All of the PIC I/O pins, RB0 - 7, RA0 - 3, RTC, Vdd and Gnd are brought out to a dual row of pads. they are followed by 15 rows of pads, with the outer pad on one side being the Vdd bus and the outer pad on the other side being the Vcc bus. After this there are two rows of pads, offset, that can accomodate a DB9, DB15, or DB25 connector. This board will accept either the 16C5x series (in the 18 pin package) or a 16C71 PIC. The PICProto Dual - $14.95 US Is similar except it has pads for 1 18 pin PIC and 1 24 pin (or another 18 pin) PIC. It is 3" x 3" and shares all of the same properties of the PICproto 18 with respect to setting up crystal or RC timing for the PICs. It has pads for 1 DB connector that is 25 pins or less. It adds about 50% more prototyping pads so you can put two or three more chips on it. The nice thing about this one is that one PIC can do asynchronous things like be a serial interface while the other provides I/O pins and monitoring functions. PIC Prototype-1 - $195.00 from Digikey This gizmo is made by Depew Engineering (depew@maroon.tc.umn.edu) and is sold by Digikey and Parallax and possibly others. It is a breadboarding system for testing out PIC designs. If you have a Digikey catalog you can look at the picture there, but it is basically a circuit board with a 28/18pin ZIF socket in the upper left corner, a 9 pin DB-9 connector that is attached to a MAX232 chip to provide RS-232 levels and a 25 pin DB-25 connector at the top center which is wired as a "parallel" port like you might find on a PC. Continuing across the top, now in the right hand corner there is a coaxial power plug and switch. Along the right side are five 7 segment displays that are permanently wired to display the value of PORTA, PORTB, and PORTC (when available) in hex notation, along the lower right are a set of dip switches for setting the clock rate (500Khz - 32 Mhz in 32Khz increments). Along the bottom edge are green LEDs showing the state of all the PORT pins (in binary :-)) and taking up roughly 45% of the circuit board is a solderless breadboard section. The solderless breadboard has two primary sections, an upper bus section containing connectors attached to all of the PIC pins and some useful pins on the board (like inputs to the MAX chip and outputs from it), and a lower section which is a standard breadboard with two rows of 5 pin connectors spaced .3" apart. Additionally, the circuit has support for Parallax's PBASIC interpreter PICs and a serial EEPROM for storing your BASIC program. (Sort of a giant BASIC STAMP). Note you have to buy a PBASIC PIC ($18 from digikey or Parallax) separately. Overall my impression is of a product, that does a lot of neat stuff but fails to be the killer product it could have been. Consequently I'll first discuss the weaknesses of the board before going on to the stronger aspects. The board claims to be a 16c5x prototyper, but the manual suggests it supports 16C71, and 16C84 parts as well. What it didn't do was add the parts to make it an optional 16C84 programmer. Given how easy this is I'm guessing that they just didn't think of it or had the design "done" before they had access to 16C84 parts. The next weakness is that while they have the EEPROM socket for BASIC users, they don't bring the pins out the protoboard so it is not possible to take advantage of the EEPROM in your prototype designs. On the prototype board, +5/Gnd are available in the bus section on two connectors but there aren't two strip connectors that you find on all other breadboards for carrying Vcc and ground. This means that you end up either daisy chaining your power and ground connections, or dedicating some of the connectors on the main bread board for Vcc and gnd. Another area that could, in my opinion, be improved is the availability of non-dedicated I/O devices, at the least it would be nice to have a 4 position dip switch and 4 available LEDs that could be used in the circuit as needed. A neat feature that would be by no means required would be using two color LEDs to display the state of the output as true (green), false (red), or floating (yellow). Finally there is the issue of cost, at $195.00 this is a fairly pricey system for what it does. Now I realize that similar systems for other microcontrollers are similarly priced although the nearest direct equivalent would be the Heathkit ET trainer series that were much more oriented to learning about microcontrollers. IF I could program and emulate PICs with it (like the Parallax tools do) in addition to using it as a breadboard that would be wayyy cool, but I don't know how much that would effect the price. I'd probably pay another $50 for that improvement. Ok, so all that grousing aside what did I like about it? I liked the fact that I can now prototype PIC designs (hardware wise) in minutes as opposed to hours. Prior to this device I would get a MicroEngineering Labs PicProto board, wire up the PIC section, wirewrap my I/O hardware or a connector that connected to my hardware, and then start programming. If I had to redo the hardware that would be fairly long delay. With this thing I can put the hardware on the prototype strip or, using the 26 pin IDC connector, connect it over to my "big" breadboard. I don't have to worry whether or not the PIC is working and I can do a 10mhz design on a breadboard. In terms of value for the money my guess is that I'll need to do at least four and possibly six different designs on it before I've made back my investment. If it were part of a PIC seminar, it would be a wonderful teaching tool. -Chuck McManis ------------------------------ [18.7] Parallax BASIC Stamp The Stamp is a 1x2" (2.5x5cm) computer that runs BASIC programs written on a PC. 8 I/O lines which can be used for serial communications, potentiometer inputs, pulse measurement, switches, speaker drivers etc. Usually you'll have to add no more than a resistor or capacitor at most. A BASIC editor on the PC converts instructions into token that are downloaded to the Stamp via a 3-conductor cable and stored in EEPROM. Whenever the Stamp is powered up, the on-board interpreter runs the program. Battery clips are built in for a 9V battery (Stamp has 5V supply built in.) and the Stamp has a small prototyping area as well. From Digikey the Development Kit (including a Stamp) is $139, and a Stamp is $39. There is a BASIC STAMP Mailing List (NOT a newsgroup) stamp-list@cybernetics.net Subscribe to it by sending mail to majordomo@cybernetics.net with a line of text saying subscribe stamp-list <your-real-name> There is also an FTP site at "novell.nrc.ca" that has a STAMP directory structure. It contains (so far) all the stuff from the Parallax BBS, plus a few other goodies. ------------------------------ [18.8] National Semiconductor LM628/629 Small motor control chip. Does PWM for motion control at a very low cost. A couple of H-bridges on the outputs. Good reference for using the 628/9 for motion control is in: Closing the Loop on DC Motor Control by Tom Dahlin and Don Krantz The Computer Applications Journal, Issue #28 Aug/Sept, 1992 [18.9] Hewlett-Packard HCTL 1000, 2000 HP's motor and encoder interface chips. Widely used and widely available. ------------------------------ [18.10] Motor Drivers The L293D, motor driver on a chip, is an SGS-Thomson part and is second sourced by Unitrode. In spite of its utility it is not readily available in small quantities. This part is a dual full H-bridge that can drive motors up to 0.6A. The significance of the 'D' in L293D is that it is diode protected. There is a reverse biased diode that shunts the reverse EMF from a motor to the V+ supply. The L293B doesn't have this diode so it must be provided externally. National has an LM18293 which they say is a cross for an L293B. The price should $4.00 or less and they need the external diodes. A replacement for the D part is the Texas Instruments 754410 which actually has a bit better current capacity (1A vs .6A) this latter part is available from Arrow electronics in the US. An alternative part is the UDN2998. This is a 3A bridge in an inline package, it is limited to motor supplies greater than 10V. You can also build your own H-bridge out of either bipolar chips or MOSFETs. _____________________________________________________________________________ [19] Acknowledgements Thanks to those who responded with updates, new material, corrections, suggestions etc. Some of the names are indirect; that is, they replied to queries on the newsgroup: Hans Moravec, Maki Habib, Ken Goldberg, David Stanton, John Nagle, Sean Graves, Sjur Vestli, Mark Yim, Rich Wallace, Dan Hudson, Sanjiv Singh, Matt Stein, Dave Stewart, Ed Cheung, Ron Fearing, Klaus Biggers, Lisa Rendleman, Nobuhiko Mukai, Paul Sharkey, Fred Martin, Willie Lim, Allen Brown, Erann Gat, Judd Jones, Tony Sprent, Richard Seldon, Brian Richardson, Ross McAree, Nathan Stratten, Chuck McManis, Ben Brown, Terry Fong, Jeff Fox, Bill Lye Patrick Arnold, David Novick, Stephen Klueter Chris Malcolm, Frank Hausman, Sam Miller, Rich Voyles, Jean-Pierre Merlet, Karl Altenburg, Dave Hrynkiw, Ken Baker, Vic Callaghan, Gerhard Weiss, Ambarish Goswami, Peter Turner, Peter Corke, Michael Bakula, Andrew Whitwell, Brian Richardson, Mark Copley, Bob Bonitz, Karl Altenburg, Mike Cleary, Martin Boyer, Prabal Dutta, Shane Bouslough, Chris Peters, Carl Wall, John Strohm, Jerry Ethridge, Gary R. Porter, Mark Kantrowitz, Larry Bradley, Richard LeGrand, Jeff Collins, Vic Callaghan, Scott Anderson, drsharp, Warrick Wilson, Jan Paterson, ...and many others who dropped off suggestions, comments and changes. Thank you! _____________________________________________________________________________ aka: Kevin Dowling Carnegie Mellon University tel: 412.268.8830 The Robotics Institute fax: 412.682.1793 5000 Forbes Avenue net: <nivek@cmu.edu> Pittsburgh, PA 15213 _____________________________________________________________________________ End of part5 -- aka: Kevin Dowling Carnegie Mellon University tel: (412) 268-8830 The Robotics Institute adr: nivek@ri.cmu.edu Pittsburgh, PA 15213 -- aka: Kevin Dowling Carnegie Mellon University tel: (412) 268-8830 The Robotics Institute adr: nivek@ri.cmu.edu Pittsburgh, PA 15213