Forum - MCS Electronics

 

FAQFAQ SearchSearch RegisterRegister Log inLog in

Look a Like Lego® RCX project

 
Post new topic   Reply to topic    www.mcselec.com Forum Index -> Robotics
View previous topic :: View next topic  
Author Message
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Thu Jun 24, 2004 4:38 pm    Post subject: Look a Like Lego® RCX project Reply with quote

I''m busy with the hardware for a Look a like RCX from Lego. The rcx from lego has 3 motor outputs and 3 sensor inputs. The programs are loaded with infrared and the hole system works on 9Volt.

The version i planed to make is a 6 motor output all speeds regulated, minimal 6 sensor inputs and to load code into it with IR but also the possibelitty to link a RF link to the module.

Also we try to make the sensor inputs compatible with the Lego® sensors.
These sensors have a special way for power and readout on 2 wire interface. This is a tricky problem where i can't find a solution for.
Somebody else did the following using bascom: LINK '

Another big sensor page: LINK

I'm wondering if there are people here that will help to setup this robot controller project with many functions as an sort of open source project.
I'm self the owner of a dutch Lego Robotics club, and that was the idea that i wanted to make such controller.

Greets Daniel Wittenaar
Brickbash Robotics Cool

[EDIT] Forgot to give a link to a very big sensor page Wink
Back to top
View user's profile Visit poster's website MSN Messenger
satz

Bascom Member



Joined: 26 Apr 2004
Posts: 22

malaysia.gif
PostPosted: Sat Jul 03, 2004 3:49 am    Post subject: Reply with quote

Hi,

I'm interested, if you're using the AVR controller
and Bascom-AVR.

Please give more details.

Rgds,
Satz
Back to top
View user's profile
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Wed Jul 07, 2004 9:37 pm    Post subject: Reply with quote

Ah finally somebody who wan't to join.. Very Happy
Well i'm collecting data now and and i'm in a testing fase to try bits of code to get little pieces to work.. About some week of 3 i will try to release some code that people can try..

My best part is hardware.. But some hardware could only be developt when i know for shure if it works with the software.. Wink

So still busy with experimenting..

_________________
Bascom AVR 1.11.8.8 full version
STK500 Programmer
ISP Programmer
Back to top
View user's profile Visit poster's website MSN Messenger
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Tue Jul 20, 2004 9:21 pm    Post subject: Reply with quote

Somebody knows a way to generate 6 PWM channels without using the internal occilators?(OC1)

Maybe with a liberary with ASM code.. So i can call it like PWM1=122 To get it working Wink

It should be the best way to make a $lib for this. So the code can be hold small..

_________________
Bascom AVR 1.11.8.8 full version
STK500 Programmer
ISP Programmer
Back to top
View user's profile Visit poster's website MSN Messenger
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Mon Aug 09, 2004 1:56 pm    Post subject: Reply with quote

Well found this solution on the web: Lego sensor readout

and supplied me with some code to readout the special 2 wire sensors from Lego..

Code:
Function Readlight() as word
    DDRA.0 = 1
    PORTA.0 = 1
    Waitms 8
    DDRA.0 = 0
    PORTA.0 = 0
    Waitus 5
    Readlight = GetAdc(0)
End Function


More info read the link above to know it all..

* goes back to his room to retry a serial connection by IR.. (somebody help me with the bootcode??? Idea )

_________________
Bascom AVR 1.11.8.8 full version
STK500 Programmer
ISP Programmer
Back to top
View user's profile Visit poster's website MSN Messenger
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Sun Jan 16, 2005 2:15 pm    Post subject: Reply with quote

Allright with some brainstorming i came up a way to generate 6 'pwm' channels in software mode..

Need a sepperated AVR just for PWm because otherwise the program's around it take to much time to generate a nice pwm pulse..

Only now i'm trying to make some way to set the value's without interupting the PWM to much.. (With motors attached you can't notish but with led's you see it blink a bit when you change a value..

So here the bare code without the Value interface where i'm still working on:

This is based on a 90s2313 on 4Mhz (stk 200 board)
Code:

'///////////////////////////////////////////////////////////////////////////////
'//                Written by Daniel Wittenaar                                //
'//    Soft PWM V2.0  Test stadium,  Busy with a serial control of Value's    //
'//        Based on an AT90S2313 @ 4Mhz  (Can be every chip you like)         //
'///////////////////////////////////////////////////////////////////////////////

Config Portd = Input
Config Portb = Output
Dim Tim As Byte
Dim A As Byte
Dim B As Byte
Dim C As Byte
Dim D As Byte
Dim E As Byte
Dim F As Byte

Tim = 0                                                     'set timer to 0

'Just set some value's to test with.
A = 255                                                     'Value A
B = 128                                                     'Value B
C = 50                                                      'Value C
D = 70                                                      'Value D
E = 10                                                      'Value E
F = 0                                                     'Value F


Do                                                          'begins rapid loop

'here can be added some programm to scan if there value's must be changed

If Tim > A Then Reset Portb.0
If Tim < A Then Set Portb.0
If Tim > B Then Reset Portb.1
If Tim < B Then Set Portb.1
If Tim > C Then Reset Portb.2
If Tim < C Then Set Portb.2
If Tim > D Then Reset Portb.3
If Tim < D Then Set Portb.3
If Tim > E Then Reset Portb.4
If Tim < E Then Set Portb.4
If Tim > F Then Reset Portb.5
If Tim < F Then Set Portb.5
Tim = Tim + 1
'increase timer with 1  Tryed INCR statement but that didn't work well
If Tim > 255 Then Tim = 0                                   'reset timer

Loop
End


Still working on this code.. Also for smoother PWM the timer have to be counting backwards if it reaches 255.. But that is also in a point of try yet..

_________________
Bascom AVR 1.11.8.8 full version
STK500 Programmer
ISP Programmer
Back to top
View user's profile Visit poster's website MSN Messenger
Ro-Bot-X

Bascom Member



Joined: 16 Nov 2005
Posts: 5
Location: Right now, Indiana, USA

romania.gif
PostPosted: Wed Nov 16, 2005 4:12 pm    Post subject: AVR based Lego controller Reply with quote

Hi, My name is Gabriel Petrut, I am from Romania, presently in USA.

I am verry interested in building such a controller. I have built smaller controllers, using a Nemesis controller (PIC 16F88), capable of driving 2 motors and 2 Lego sensors and has 2 more 3 pin I/O, for distance sensors, servos or, using an adapter, 2 more Lego sensors. Link

I am new to AVR, so I will try to follow your sample codes and build a test controller on a breadboard to see how it works. After all is tested, I will make a PCB for it and place it in Lego brics. I also am interested if anyone has made a graphical programing language like Lego software or Robolab, to be used with AVR. It is easier to teach kids to use this to program their robots...

I know how to use the Lego sensors. I also know how to build the motor driver using SN754410 and built in hwpwm, but it has only 3. So, your solution for 6 motors is of real interest to me. I also am interested to see how is IR serial link going to be made to use the Lego IR Tower. Also, if possible, I want to be able to use this IR message system as a IR proximity detector, without having to use Light sensors to detect the IR bounce. (I can do that with Nemesis verry well right now, but not the IR programming.)

Thank you for sharing,

Gabriel[/url][/u]

_________________
Build Robots! instead of playing Quake...
Back to top
View user's profile Visit poster's website Yahoo Messenger
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Wed Nov 16, 2005 8:10 pm    Post subject: Reply with quote

Hmmm i typed a hole story before this post.. but because some cookie problems i lost the whole bunch of text..

Everything i would have told will become clear in a few weeks..

Have a lot of stuff running here so have to pull everything together till it is a whole controller..

_________________
Bascom AVR 1.11.8.8 full version
STK500 Programmer
ISP Programmer
Back to top
View user's profile Visit poster's website MSN Messenger
vinodkumar

Bascom Member



Joined: 18 Oct 2005
Posts: 7
Location: Jabalpur

india.gif
PostPosted: Sun Dec 25, 2005 8:18 pm    Post subject: we have developed a ronotics board Reply with quote

Our Institute has developed a robotics board based on AT89S52 . the board has capability to control two geared motors, four reflective IR sensors, 8 channel 8 bit ADC and two stepper motor controller as add on board. with a 16*2LCD and 16 digital I/O lines.

we are using bascomdemo version to control two motors in conjunction with the four reflective IR sensors to make all sorts of robots, wall hugging, obstacle avoiding,. we are doing studies on maze solving capabilities with very good results.
Back to top
View user's profile Yahoo Messenger
DJD XTREEM

Bascom Member



Joined: 24 Jun 2004
Posts: 190
Location: 127.0.0.1

netherlands.gif
PostPosted: Mon Dec 26, 2005 3:07 pm    Post subject: Reply with quote

Hmnm really nice.

I only don't know why are you using a 89S series processor?

I like the newer generation of avr much better for outstanding perfomance and fast flashable..

Not sure how that is implement on the 89s series..

But maze solving is a nice subject to build controllers for..
My board will be easy to cofigure in most applications.
But that will take some more time to develope.. Wink

_________________
Bascom AVR 1.11.8.8 full version
STK500 Programmer
ISP Programmer
Back to top
View user's profile Visit poster's website MSN Messenger
mick

Bascom Member



Joined: 06 Feb 2005
Posts: 12

PostPosted: Sun Jan 15, 2006 12:59 pm    Post subject: Reply with quote

March 08, 2005

Atmel’s New Single-Cycle 8051 Core Provides Big Performance Boost and Low Power


Single Cycle Core-AT89LP Family

The Atmel AT89LP family is a low-power, high-performance 8-bit microcontroller with an Enhanced 8051 CPU.
In the classic 8051 core, every fetch requires at least 6 clock cycles. The LP family is built around an
enhanced core that can fetch a single byte from memory every clock cycle. In the 89LP family CPU,
instructions need only 1 to 4 clock cycles providing 6 to 12 times more throughput than the standard 8051.

The enhanced CPU core is capable of 20 MIPS

These devices can operate down to a low voltage of 2.0V.




The AT89LP family devices consist of In-Application Programming Flash, On-Chip DataFlash®,
PWM, 10-bit ADC, Analog Comparator, Watch Dog, SPI, which reduces System cost and enables
faster time to market.


more here

http://www.atmel.com/products/8051/at89lp.asp Wink
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    www.mcselec.com Forum Index -> Robotics All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum