Newsgroups: comp.os.linux.development.system,comp.os.linux.help,comp.robotics
From: Leon@lfheller.demon.co.uk (Leon Heller)
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!pipex!demon!lfheller.demon.co.uk!Leon
Subject: Re: Using Linux as a (robotic) controller?
References: <3dc1vf$kma@canopus.cc.umanitoba.ca> <3dd29a$po5@ns.cencom.net> <3dut3v$s6l@news.acns.nwu.edu>
Organization: Home
Reply-To: Leon@lfheller.demon.co.uk
X-Newsreader: Demon Internet Simple News v1.27
Lines: 42
X-Posting-Host: lfheller.demon.co.uk
Date: Fri, 30 Dec 1994 16:46:28 +0000
Message-ID: <788805987snz@lfheller.demon.co.uk>
Sender: usenet@demon.co.uk
Xref: glinda.oz.cs.cmu.edu comp.os.linux.development.system:124 comp.os.linux.help:82160 comp.robotics:16603

In article <3dut3v$s6l@news.acns.nwu.edu>  ** none **   writes:

> In article <3dc1vf$kma@canopus.cc.umanitoba.ca> rahardj@cc.umanitoba.ca (Budi
>  Rahardjo) writes:
> >>Has anybody used linux to control external devices, such as robot arms?
> >>How difficult is it to program linux printer port (e.g. to send
> >>eight bits of data)? Can I use the printer to read the data back?
> >>Or should I use the serial port (but that would mean I have to have
> >>a serial interface on the devices that I want to control)?
> >>
>   I realize that this is blasphemy in todays hardware world but I would 
> recommend a serial port solution. For a number of reasons:
>    1. Robustness, noise immunity, error checking (just implement parity)
>    2. Flexibility, RS232 <50'; RS422/485 ~100's; parallel 20'??
>    3. Ease of use, 3 wires is sufficient
> 
>   The down side is slower speed, BUT only when you are using short distances,
> as the distance goes up so does the distributed capacitance on a parallel 
> hookup and down goes the speed. 
>   Also think about race conditions on the parallel wires you are 
> using and the assymetry of rising versus falling edges. 
> 
> Oh well, I'm sure everyone will continue to use parallel, its easier?!!
> 
> Rich

A long time ago, I was playing about with a TRS-80 Model I, controlling
stepper motors on a Turtle-like contraption. I used something similar to a
clocked serial line using two bits on a parallel port for each stepper
controller chip. One bit for the direction, and the other to step the motor.
The programming was quite easy. I used RS-422 (I think) MC3457 5 V balanced
drivers and receivers at each end, to avoid having to mess about with
additional power supplies and for noise immunity. RS-422 also allows very
high speed comms over much greater distances than RS-232. A clocked serial
I/F using RS-422 is a useful compromise solution.

Leon
-- 
Leon Heller                       | "Do not adjust your mind, there is
G1HSM                             |  a fault in reality": on a wall
Email: leon@lfheller.demon.co.uk  |  many years ago in Oxford.
Phone: +44 (01734) 266679         |
