![]() |
![]() |
| Ok so the propeller chips and the Protoboards have arrived and I have had chance to begin my assessment of the chip and begin the build of the new robot. | |
| The picture is not very good - but it shows the new octobot with its power board fitted and the 12v battery. | |
| New Propeller chip protoboard and breadboard ready to start experimenting. | |
| Octobot power board. | |
| New Propeller kill switch. | |
| At this point it has become apparent how limited my ability is in the spin language so i have taken a step back to learn the spin language properly. | |
| Using the second protoboard with the VGA , mouse and keyboard sockets fitted i have sat down to learn the spin language properly. The program running is the screen demo from parallax. | ![]() |
| Close up of the parallax protoboard with the first breadboard experiments. | ![]() |
First thoughts. |
|
The propeller chip has a level of potential like no other chip I have encountered, its speed and the fact that there are effectively eight chips in the one package means that they are ideally suited to the needs of a robot. One of the limiting factors of a robot was always how fast each of the sensors were being monitored. If you only check a whisker four times a second then there is a limit to how fast your robot can run and react to its environment. The Propeller will truly multitask thus one cog as the processors are called can monitor sensors, therefore no matter how complete software becomes on another cog the sensors are cycles at the same rate. It is obvious though that the propeller is not for the uninitiated it is complex to program and still in its infancy as a chip so much is expected of a programmers ability. It does state as much on the Parallax site. |
|
Ok So its 1am Tuesday 7 days since the chips were delivered and I am now at a stage where I am in absolute awe of the potential this chip offers. Let me explain. Normally when you buy a chip like a PIC or a STAMP there are a finite number of things that each of the output pins can do, most of these are restricted by the language and the speed the chip runs at. Let me say at this point that this may not be entirely true of some PIC chips when programming in assembler. However the propeller is the first chip I have ever encountered that can generate any signal from the ground up. I have set up the circuitry using a proto board and a breadboard for the VGA screen, TV screen and speakers and the chip produced respectable picture on each i have also set up the compass chip and using the ready supplied software seen how the board knows which way it is facing. This chip could be a games machine, multiple screen controller, advertising tool and any number of other products not just a robot. |
|
First Steps - adding sensors and control.Having bought two protoboards it was evident that i had a lot to learn about SPIN I soldered some push pin sockets to the board and started trying out different devices. Proving each device was fin and i leaned a great deal about connecting VGA screens, Composite video screens and the compass chip. The learning curve was steep but now i feel confident with the propeller chip. I would agree with parallax that it is not for the new. The lack of a floating point maths unit is a blow but i have ordered an external unit from Rev Ed. with a GPS system so I will keep you posted. Ok so I spent some time adding three sonar sensors which used another three inputs so i started adding up how much space i had left. Even the 32 inputs of the parallax are a finite limit so lets see how i was going. Pin 0 - Left Motor Control Via a First Robotics power controller using the core routine from the servo software from parallax. Pin 1 - Right Motor Control Via a First Robotics power controller using the core routine from the servo software from parallax. Pin 2 - First of the motor controls for the arm (Later expansion) Via a First Robotics no proportional power controller using the core routine from the servo software from parallax. Pin 3 - Second of the motor controls for the arm (Later expansion) Via a First Robotics no proportional power controller using the core routine from the servo software from parallax. Pin TBA - Third of the motor controls for the arm (Later expansion) Via a First Robotics no proportional power controller using the core routine from the servo software from parallax. Pin TBA - Fourth of the motor controls for the arm (Later expansion) Via a First Robotics no proportional power controller using the core routine from the servo software from parallax. Pin 4 - First of four pins taking the binary input from the touch sensors. When i started adding up the touch sensors it was painfully apparent that there would be at least 8 if not more so I decided that i would convert touch switch to a binary number. This using 4 pins on the processor would allow me up to 15 switches and if needed more adding one more pin would take it to 31. Etc. I used a simple diode system to create the number. 1 to 4 was easy they were effectively direct connections from there on in a diode connected the input to two or more lines to create the number Pin 5 - part of switch input Pin 6 - part of switch input Pin 7 - New GPS System - Wow yes they work Pin 8 - Left SRF05 Sensor. Pin 9 - Middle SRF05 Sensor. Pin 10 - Right SRF05 Sensor. Pin 11 - Side Left SRF05 Sensor. Pin 12 - First of the three pins needed for the Composite RGB signal used for the LCD monitor which watches the robots software output showing the sensor conditions. Pin 13 - Second of the three pins needed for the Composite RGB signal used for the LCD monitor which watches the robots software output showing the sensor conditions. Pin 14 - Third of the three pins needed for the Composite RGB signal used for the LCD monitor which watches the robots software output showing the sensor conditions. Pin 15 - Not In Use Yet. Pin 16 - Connection to electronic compass. Pin 17 - Connection to electronic compass. Pin 18 - Connection to electronic compass. Pin 19 - Not In Use Yet. Pin 20 - SCL line not in use yet but ready for GPS system and other I2c devices. Pin 21 - SDA Line not in use yet but ready for GPS system and other I2c devices. Pin 22 - High SRF05 Sensor. Pin 23 - Right Side SRF05 Sensor. Pin 24 - Not In Use Yet. Pin 25 - Not In Use Yet. Pin 26 - Not In Use Yet. Pin 27 - Not In Use Yet. Pin 28 - Eeprom SCL Pin 29 - Eeprom SDA Pin 30 - USB RXD Pin 31 - USB TXD
|
|
Update Dated 23rd September 2007. The GPS system arrived this week. I have purchased the LS-41EB Fast Acquisition Enhanced Sensitivity, 12 Channel GPS Sensor Module, i cant work out who manufactures this item as it seems to have rebadged PDF files on each source company. The LS-40EB module is a small, single-board, 12 parallel-channel receiver intended for Original Equipment Manufacturer (OEM) products. The receiver continuously tracks all satellites in view and provides accurate satellite positioning data. The LS-41EB is optimized for applications requiring good performance, low cost, and maximum flexibility; suitable for a wide range of OEM configurations including handhelds, asset tracking, marine and vehicle navigation products. Its 12 parallel channels and 4000 search bins provide fast satellite signal acquisition and short startup time. Acquisition sensitivity of –137dBm and tracking sensitivity of –145dBm offers good navigation performance even in urban canyons having limited sky view. Anyway the first hurdle is the output connector. In their wisdom (Probably a desire to be compatible with items like the XBEE bluetooth module interface. To get it back to 2.5mm pitch a small circuit board was etched with 10 pads at 2mm pitch and 10 pads at 2.5mm pitch the GPS was then soldered to the board with a header socket. |
|
| Now the fun starts getting the unit to work, it is only when you read deeper into the information that you find out that it can take up to 15 minutes for the unit to fire up the first time, from there on it is very quick. | |
| A little download piece of software will run on the PC to help you establish first contact and help you know that the unit is working corectly but you need to overcome the inadequacies of the 3v power usage and signal strength of the GPS. When I finally got it working it was obvious that junk was being sent to the PC's serial port. No amount of monitoring by the viewer software would establish a link and hyperterminal was geting garbage at all boud rates. | |
I had a Maxim MAX232CPE in stock and so added this to the breadboard to help lift the signals. This was an instant success and the viewer instantly stated to see lattitude and longitude and marke out satelites. I went on google earth and put a map pin in my house and it gave an almost identical Lat & Long. I was so impressed. It was becoming obvious at this stage that the active antenna i was using needed to be outside and it is currently hung out of the window sat on the window sill. |
|
The next task now is to get the parallax propeller to see the serial input so this is more new ground and my first programming attempt using the BS2 add in module is so far a bust. (Onwards and Upwards). |
|
| Whilst bored I decided to make a motherboard for the 40 pin version of the Parallax Propeller chip it has the multiple voltage options and also has a bank of 2803 chips to move the 3.5 volts up to either 5v TTL logic or 12v depending on your chosen usage. | ![]() |
![]() |
|