Archive for the ‘Microcontrollers’ Category

Atmega328 + 3-axial Accelerometer + XBee

October 8, 2011 2 comments

I’m adding this custom Atmel-based wireless sensing node equipped with an Atmega328, ADXL335 3-axial accelerometer and Digi’s XBee. The board can be flashed with an Arduino bootloader and programmed just like another Duemilanove or Pro. In terms of Arduino, this is a combined Arduino Pro, XBee shield and a third sensor board. The size of the board is a tiny 2.00″ x 2.15″. It’s DFM.


What do I have so far?

September 25, 2011 Leave a comment

I have worked with several  since my college years. My first robot was a  that was outfitted with sensors to follow a black line printed on white tarpaulin race track. I had several versions of that line-follower. The first one was based on an 8-bit microcontroller, the . They are the sponsor for an annual robot competition. Back in 2003, we were using this . Burn it and that’s it.

You are probably asking how do we optimize or test our hardware with the software we load on an OTP. The answer is it depends on whether you placed variable inputs such as switches on digital ports or ADC ports probing  values or none at all. Clearly, if the software was designed without any appropriations for variable inputs then the controller will be fixed and therefore a candidate for a push pin on your cork board when it fails to do your design task. So that’s as far as you can get with OTPs. If you want to test software prior to burning it on the chip, there is an emulator that will act as the . The drawback here is that your mobile robot needs to be connected to the emulator board by some long cabling. The cabling usually interferes with the mobility of the robot.

At that time neither  nor  microcontrollers were not yet available to us. So I worked on an analog negative feedback control version of that robot. That was easier to tweak. Also, back then as an undergraduate, use of op-amps and comparators were quite fresh from our electronics classes. So the analog version worked well completing the track even though it wiggles much. This thing though does not recognize cross tracks. Will need a microcontroller for that.

The next robot I have and am still working on is a quad rotor . My goal is to make it autonomous and fly a camera and take shots. Right now, it is controlled using fly-by-radio with attitude assists and accurate motor and rigid body models. Also, the quad rotor is a property of the university I studied in so I will be working on something new soon to continue my work.

On my next posts on the line follower, I will try to put together something similar to the robot back in 2003 only this time incorporating PID and motion kinematics for good state estimation.

On my next posts on the UAV, I will try to recreate the work that I have done and let’s see when we will be able to reach the autonomous flight goal.

Right now, the applications I have in mind for such robots are  and  trucks. In hindsight, the sensor suite on the UAV is quite robust and can be used for  and . Let’s see what else these two robots can do.