Scater Bot

This robot was started when i was at faculty of Mechanical engineering and mostly as a time to kill between studying. Then i made few seminars regarding the controllability of non-holonomous construction and after that it became my "project". I made my master Thesis on simulation model of this construction but i have never got the time and resurses to made it real. So after few years it came back on my table and i started to work on it when i get back from work ...

Basically it all started with Tamiya RC model which was bought to play around, but i got borred very fast and i started to modify it. Then i came idea to put another steering wheel option and of course idea to make it autonoumous. I made some modificaitons on construction and basically all that was left from original model was gear box. 

Some of the parts was modelled in Catia and made either on faculty or at local CNC shops. Other parts was bought over e-bay and fitted. Electronics is made as modular construction where i buy bits and pieces around and assemble it on one of my own board which was designed to fit "perfectly" inside of construction.

At this very moment im concentrating on writing the fuzzy logic controller for the Bot. Also all of the programmings are made by me on Keil for ARM and manual control are done on iOS.

 

Live telemetry view on ipad. (at the moment not all sensors are functioning)

 

This is the world map view, where black line is robot movement and white line is reading from sensors. Units shown are meters. I have managed to position it in 2mm error in straight line using implemented PID for distance control.

PID demand and actual speed. I will resend this pict with different color for demand and actual, but for now this one shows the progress. As for the noise on speed, i have no idea where does it come from. It can either be bug in encorder reading, speed calculation or PID parameters. Work in progress... Bugfixing was done and now it works like a charm. You cant imagine how much problems can unaligned holes on encoder produce :)

 

P.S. i will try to update text in regards of comments from you guys...

Navigate around and map the area

  • Actuators / output devices: 1:18 tamiya gearbox, 2x540 Mabuchi motors, 2xservo
  • Control method: autonomous with manual mode: iOS iphone/ipad
  • CPU: LPC2148 ARM7
  • Operating system: my own
  • Power source: 7.4V Lipoly, 2x7
  • Programming language: ObjC for iOS, Keil C for ARM
  • Sensors / input devices: CMPS03, 6xSharp IR, 2xSRF08, Motor encoder
  • Target environment: indoor, outdoor

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/scater-bot

Very impressive bit of work there.

I haven’t gotten to say this in a while. Video or it didn’t happen. :smiley: We love video of robots here. :slight_smile:

After looking at the pictures you included, I am curious as to what kind of wireless link you have. One of our members was asking about xbee sized wireless replacements. You seem to have something in the xbee form factor that is not an xbee.

I will post videos later on

I will post videos later on :slight_smile: Havent take one yet.

As for the wifi, im using Rovio networks RN-XV wifi module which implements full blown tcp stack and therfore can be used via iphone/ipad or as in my case wifi ruter.

Very nice robot

 

looking forward to see the AI on this baby working.

 

About the LPC2148, does the USB connector allow you to send code to the board using ISP??

I’ve been tempted to try one of those but from the schematic the ebay seller offered the programming was not clear.

Im a bit of a dev kit and ARM nut so Im curious.

 

 

**Thanx :wink:

Well LPC allows**
Thanx :wink:

Well LPC allows you to program it via USB as far as you make your bootloader code that enables it, but there are examples on the net so dont worry. But you need to have jtag at first.
Im not using it cause it is beneficial to debug code via jtag and also im working on over the air bootloader.

Cool!

Looking forward to see more details on the design side. I am also building similar rover using LPC2148 and Lynxmotion 4WD chasis.

If you dont mind could you please upload a block digram. I have designed a custom board with LPC2148 +L298 + Xbee + Sharp sensors. I am bit curious to understand the control part to make it autonomous.

Block diagram of control

Block diagram of control algorithm ? I dont have it. Basically, you have to know mathematical model of the mobile robot. It can be derived from kinematic model of non-holonomous vehicle. Where Phi is orientation of robot, delta is orientation of steering wheels.

x’=v1cos(Phi)

y’=v1sin(Phi)

Phi’=(v1/L)*tan(delta)

delta’=v2

Now you have control variables v1 and v2. In my case i use fuzzy to calculate control variables upon current (Xact-Xdem) and (Yact-Ydem). After that i set demant v1 and v2 speed to PID controller. Thats it for now.

For the reactive navigation i’ll probably use: http://homepages.laas.fr/simon/publis/HADDAD-ICRA-98.pdf but first thing first. Currenty i only have linear positioning using Fuzzy and it works like a charm.

Thanks for sharing the info.

Thanks for sharing the info.