Hello welcome to the home page of the artificially intelligent robot project

In short the project is about construction of an PC based robot and associated hardware and an Artificial Intelligence capable of controlling it.
The software development includes test suites, simulator and the AI.
The goal for the AI is to have survival, learning, replication and cooperative behavior.

this is still under construction ask stephenhumble at for inquiries
Browse CVS web access to robotx files repository;

Part of the project involves design of microcontroller circuit card nodes connected by rs485 in the current nodes and both CAN and RS485 interface is planned for the next version. These nodes operate electric motors or other loads using FET switching elements designed to drive loads upto ~500watts(24volt 20+amps).
Software and hardware for an earlier design have lead to a second and now a third generation design is in progress.
The C language driver routines for the microcontroller nodes is general purpose and modular and contains modules for interfacing to IRRX , PWM, stepper motor , IRDDS sensor ,RC servos, Quaderature and pulse ,ADC circuitry ,all now fully tested these are all usable as feedback and limiter or protective interfaces.
These control nodes provide a reprogrammable customisable system which can be used for any high power electrical actuators.
My ultimate robot chassis will require this type of functionality.

Goto Sensorless DC motor driver circuit page.;

The physics simulator uses open-GL for display and the software relies on a set of c++ mathematical routines compiled as a library for 3d calculations with plane-line interception, matricies, vectors, axis-angle ,quarternons , and other usefull routines.

Lincvs seems to be the best linux CVS client and below are instructions on howto set it up for this project.
You need a sourceforge login and to sign up to robotx on sourceforge first.
Setup ssh client on your PC for key based authentication as using passwords is painfull see sourceforge ssh info pages for how to do this though here are a few tips.
In your shell environment set CVS_RSH=ssh
The excerpt below are an example of the lines to add to your /etc/ssh/ssh_config file (or per user file for a multiuser system).
The file reference /home/steve/.ssh/id_dsa_sourceforge is what i renamed my private key after it was generated by ssh-keygen, the public key you paste onto sourceforge.
> ForwardX11 no
> User johnSmith
> IdentityFile /home/steve/.ssh/id_dsa_sourceforge
Lincvs setup is as follows for developer access.
In the lincvs options/profiles window
name= robotx
user= johnSmith
repository= /cvsroot/robotx
access method= remote shell
make up a directory with mkdir such as /home/john/robotics
Then in Lincvs you select menu project/checkout window
choose the robotx profile and tick "use external remote shell"=shh
Checkout into: /home/john/robotics
cvs module: monorail or robotx
checkout as: myco
And you will then have your own local copy to work on and Lincvs will happily generate strange commands like those below as you as you work on the project.
cvs -d -z3 co -P -d "myco" "monorail"
cvs -z3 commit -F "/home/john/.lincvs/tmp.PkbRdm" "quad.c"
cvs -z3 -n update -P