English version Norsk versjon Gallery
Click on images for large version

Content

Introduction

This project is based on the Eyebot-robots owned by Østfold University College. The assignment was to design and make at least two interface-circuits for making the robot able to interact with different sensors.

We chose four diffrent sensors that we thought would be fun to use. A lightsensor, a temperature sensor, a acceleromter and an ultrasonic sender and reciever.

These senors were chosen without any special motive, other than a wish to make the robot as indepentent of human interruption as posible.

The light and temperature sensors is not an advantage when it comes to the robot beind independent. It's more for fun. It dosn't realy mather for the robots "eyes" if it's dark or not.

 

bilde
bilde

Process of working and results

When we only had 2 weeks to do the whole project we had to make the best of the little time we got. There have been many lait nights, and even the weekends have been used. When we look at all the details we didn't quite finnish we realise that there will be even more days with working. But at least then we will not have the deadline to worry about

bilde

Temperature sensor

Like all the other groups we chose to use a temperature sensor. Our sensor of choice is a so called NTC-resistor. This is a passive component, where the resistancevalue gets smaller when the temperature is rising.

Because there is few times we wanted this sensor to have an impact on how the robot operates, we chose not to emphasize it. The diffrent readings is shown on the lcd-screen. These values are however not making any sense, as they are neither celcius or fahrenheit values. Simply just a number representation off the voltage out of the sensors interface-circuit. We can however program the robot to actualy showing the temprature in degrees Celsius.

bilde

Light sensor

We also chose to use a light sensor in this assignment. It dosn't realy do anything useful as the robot is not controlled by light. To give some visual feedback on how the lightconditions are, we use eight diodes in the front. Theese diodes are turned on via one of the robots outputs when the light falls under a given value. Atleast it puts a uniqe an cool touch to the robot.

The sensor of choice is the TSL250 which turned out to be ideal for our use. We got high voltage-values on its output in daylight conditions. But if the robot came in to a shadow or the lights were dimmed down, we could read a noticable change in values.

bilde
bilde

Accelerometer

An accelerometer is a mechanical or electronic device that reacts to changes in direction. The typical acceleromter can detect changes in two or three axis. If the robot should run into a wall. The accelerometer will react and send out a signal that represents the diffrence in movement on the outputs for the diffrent axis.

We chose a component called LIS2L02AL for our use. It can only detect diffrences in movement within the x and y axis. This was chosen because hopefully the robot will be running in one level only.

When designing the amplifier in the interface-circuit we made it possible to change the amplification so the sensitivity in the sensor can be changed manualy.

bilde
bilde

Ultrasonic sensor

The process with designing an interface-circuit for the ultrasonic sensor has been litteraly an rollercoaster. The reason for choosing this sensor is to make the robot able to see during changes in light and so on. After earlier tests with the robot, we discovered that the existing "eyes" on the robot were very sensitive for this kind of noice.

After doing a little reasearch on how to operate this sensor we allmost gave up. But after doing a little thinking we tried using a RC-curcuit to decide if a object were to close or not. We concluded that this was probably not the right setup do to unprecise results.

Insted we began schetching up a circuit using oscilators so we could use a 4-bit binary counter (74HCT93) an logics to do the same job as the RC-circuit was ment to do. Instead of an oscilator we ended up using a TLC 555 to generate a binarypuls with a 10KHz frequencency. That made us able to design a circuit that would give a low-signal back to the robot if the echopuls were shorter than 10 pulses from the 555. More easy explained, the robot would be noticed if a object were to close.

We also use two TLC555 to generate a trigger-puls for the ultrasonic sensor. The frequency here is 20Hz and the puls is 3% high-periode and 97% low-periode.

The last section of the circuit is logics and a SR-latch to keep the last signal until the next time the sensor is trigged. This is to make shure that we pick up any changes in the signal in to the robot as the robots processor and the sensor doesn't operate on the same frequency.

Kretstegning

Facts about ultrasonic sensors.

An ultrasonic sensor contains a sender and a reciever. When trigging the sender, it will send out a soundvawe beyond what the human ear can hear. If this soundvawe hits an object, some of it will bounce back and get picked up by the reciever. To find the distance to the object, one can measure the time from the vawe is sent to it's picked up again.

In our sensor, the SRF04 the sensor is calculating the time it takes before the vawe bounces back and gives an echopuls out. The shorter the echopuls, the nearer the object. 100us equals 3cm, while 18ms equal 3m. If the sensor can't find any objects, the echopuls will be 36ms

bilde
bilde

Programing

This is the first time any of us have done any major programing i C, so it was quite a challenge. Lucky for us, it's not to far from JAVA which we are quite familiar with. We used our knowledge of how threads work in JAVA when we built the basis for the Bertha v1.0 software. The result was one thread for the ultrasonic sensor, another thread for the lightsensor, a thread to operate the robot, and one last thread for driving. This is so that we can manualy stop her at any moment or kill the threads and return to the main menu.

A couple of days of coding and quite a bit of issues solved, Bertha is pretty much the way we want her. But there will be more versions!

bilde
Bertha sourcecode

Conclusion

This have been an extrordinary cool school-project. We feel that we have learned lots when it comes to electronics, programing and own physical limits.

It leaves a empty spot in our hearts to have written this report and by doing so, have crossed a finishline for the project that has taken most of our time the last two weeks.

But even thoug the project is over and we are getting back to our original sleeping scheduals, we feel quite certain that this isn't the last thing we do with this robot. This project has created a genuine intrest for robotics in all four of us. And you can feel certain that when we do continue this work, there will be more reports out.

The big goal is to be able to join a yearly contest called robocup in Denmark in a couple of years. And we ar postive that we will get that chance if we continue to work with Berta.

bilde
bilde
This is a project by Geir, Jonas, Lars Petter og Magnus from the "Superonsdag" group, Østfold University College :: Design by Magnus :: photos by Lars Petter.