What are robot sensors? Autonomous robot based on Arduino with the ability to remote control The best sensors from stavetrack.

To gain experience in working with the Arduino board, so to speak, as a learning experience and just for fun, this project was created. The goal of the project was to create a car that can autonomously move around various obstacles without colliding with them.

Step 1: List of components and cost of the project

1. Toy car with radio control (radio controlled).

This thing costs about 20 bucks, if you have the opportunity to spend more, then you can use better.

2. Arduino Uno microcontroller - $25

3. Motor shield to control electric motors - $20

4. GPS for navigation. Adafruit Ultimate GPS Shield - $50

5. Magnetometer as a compass for navigation. Adafruit HMC5883 Magnetometer - $10

6. Ultrasonic distance sensor to avoid obstacles. HC-SR04 - $6

7. LCD display to show vehicle status and information. LCD Display Blue 1602 IIC, I2C TWI - $6 (you can use another one)

8. Infrared sensor and remote control.

9. Arduino sketch (C++ program).

10. Thin wood board as mounting platform.

11. Breadboards. One is long and narrow, and the other is small in order to separately install the magnetometer on it away from other elements.

12. Jumpers.

13. Ultrasonic Sensor Mounting Kit - $12

14. Soldering iron and solder.

So, all in all, it took about $150, and that's assuming you buy all of these components, because you might already have some of that.

Step 2: Chassis and platform mounting

The radio control was removed from an unwanted toy that cost 15 bucks.

This car has two engines. With the help of one engine, the remote control controls the speed of the robot, and with the help of the other, the steering is controlled.

A thin board was used as a mounting surface, on which breadboards, Arduino, LCD, etc. were attached. The batteries are placed under the board and the wires are passed through the drilled holes.

Step 3: Program

The Arduino is controlled through a C++ program.

Source

RC_Car_Test_2014_07_20_001.ino

Step 4: LCD Display

During operation, the screen displays the following information:

Row 1:

1. TH - Target, course to current waypoint

2. CH - Current direction of the robot

Row 2:

3. Err - Compass direction, shows in which direction the robot is moving (left or right)

4. Dist - Focal distance (in meters) to the current waypoint

Row 3:

5. SNR - Sonar distance, that is, the distance to any objects in front of the robot

6. Spd - Robot speed

Row 4:

7. Mem - Memory (in bytes). Arduino memory has 2 KB

8. WPT n OF x - Shows where the robot is in the waypoint list

Step 5: Avoid Collisions With Objects

In order for the robot to avoid obstacles, an ultrasonic "Ping" sensor was used here. It was decided to combine it with the Arduino NewPing library, as it is better than the simple Ping library.

The library was taken from here: https://github.com/fmbfla/Arduino/tree/master/NewPing

The sensor was mounted on the bumper of the robot.

The infrared sensor is included in the home version of the Lego mindstorms EV3 set. This is the only sensor that can be used on its own or paired with an infrared beacon, which is also part of the home kit. We will devote the next two lessons to the study of these two devices, as well as their interaction with each other.

8.1. We study the infrared sensor and the infrared beacon

(Fig. 1) in his work uses light waves invisible to humans - infrared waves * . The same waves are used, for example, by remote control panels for various modern household appliances (TVs, video and music devices). Infrared sensor in mode "Approximation" independently sends infrared waves and, having caught the reflected signal, determines the presence of an obstacle in front of it. The infrared sensor implements two more modes of operation in tandem with an infrared beacon (Fig. 2). In mode "Remote" the infrared sensor is able to determine the pressing of the buttons of the infrared beacon, which allows you to organize remote control of the robot. In mode "Lighthouse" the infrared beacon sends out continuous signals that the infrared sensor can use to determine the approximate direction and distance of the beacon, allowing the robot to be programmed to always follow the direction of the infrared beacon. Before using the infrared beacon, two AAA batteries must be installed in it.

Rice. one

Rice. 2

8.2. Infrared sensor. Mode "Approximation"

This infrared sensor operation mode is similar to the ultrasonic distance detection mode. The difference lies in the nature of light waves: if sound waves are reflected from most materials with little or no attenuation, then the reflection of light waves is affected not only by materials, but also by the color of the surface. Dark colors, unlike light colors, absorb the light flux more strongly, which affects the operation of the infrared sensor. The operating range of the infrared sensor also differs from the ultrasonic one - the sensor shows values ​​ranging from 0 (subject is very close) to 100 (the object is far away or not found). We emphasize once again: the infrared sensor cannot be used to determine the exact distance to the object, since its readings in the "Approximation" mode are affected by the color of the surface of the object under study. In turn, this property can be used to distinguish between light and dark objects that are at an equal distance from the robot. The infrared sensor copes with the task of determining the obstacle in front of it quite successfully.

Let's solve a practical problem similar to Task No. 14 Lesson No. 7, but, in order not to repeat ourselves, we complicate the condition with additional requirements.

Task number 17: write a program for a robot that moves in a straight line, stops in front of a wall or obstacle, moves back a little, turns 90 degrees, and continues to the next obstacle.

At the robot assembled according to the instructions small-robot-31313, an infrared sensor is installed in front in the direction of travel. Connect it with a cable to the port "3" EV3 Brick and start creating the program.

Consider the program block "Expectation" Orange Palette by switching it to Mode:- "Comparison" - "Approach" (Fig. 3). In this mode, the program block "Expectation" has two input parameters: "Comparison Type" And "Threshold". We already know how to configure these parameters.

Rice. 3

Solution:

  1. Start straight ahead
  2. Wait until the threshold value of the infrared sensor becomes less than 20
  3. Stop moving forward
  4. Drive back 1 engine revolution
  5. Rotate right 90 degrees (using the knowledge of Lesson #3, calculate the required angle of rotation of the motors)
  6. Continue steps 1 - 5 in an endless loop.

Try to solve Task number 17 independently, without looking into the solution.

Rice. 4

And now, to consolidate the material, try to adapt the solution Tasks #15 Lesson #7 to use the infrared sensor! Happened? Share your impressions in the comments to the lesson ...

8.3. Remote control of the robot using an infrared beacon

The infrared beacon, included in the home version of the Lego mindstorms EV3 constructor, paired with an infrared sensor, allows you to remotely control the robot. Let's take a closer look at the lighthouse:

  1. Using the infrared beacon, aim the signal transmitter (Fig. 5 pos. 1) towards the robot. There must be no obstacles between the beacon and the robot! Thanks to the wide viewing angle, the infrared sensor reliably receives signals, even if the beacon is located behind the robot!
  2. There are 5 gray buttons on the beacon body (Fig. 5 pos. 2), whose pressing is recognized by the infrared sensor, and transmits the codes of pressing to the program that controls the robot.
  3. With a special red switch (Fig. 5 pos. 3) you can choose one of four channels for communication between the beacon and the sensor. This is done so that several robots can be controlled in close proximity.

Rice. five

Task number 18: write a program for remote control of a robot using an infrared beacon.

We already know that to implement the ability to select running blocks, you need to use the program block "Switch" Orange palette. Set the block operation mode "Switch" in - "Dimension" - "Remote" (Fig. 6).

Rice. 6

To activate the connection between the infrared sensor and the beacon, you must set the correct value of the parameter "Channel" (Fig. 7 pos. 1) according to the selected channel on the beacon! Each block program container "Switch" you need to match one of the possible options for pressing the gray keys (Fig. 7 pos. 2). Note: some options involve pressing two keys at the same time (pressed keys are marked in red). Total in program block "Switch" In this mode, you can process up to 12 different conditions (one of the conditions must be selected as the default condition). Program containers are added to the block "Switch" by clicking on "+" (Fig. 7 pos.3).

Rice. 7

We propose to implement the following robot control algorithm:

  • Pressing the upper left button turns on the rotation of the left motor, the robot turns to the right (Fig. 7 pos. 2 value: 1)
  • Pressing the upper right button turns on the rotation of the right motor, the robot turns to the left (Fig. 7 pos. 2 value: 3)
  • Simultaneously pressing the top left and right buttons turns on the simultaneous forward rotation of the left and right motors, the robot moves forward in a straight line (Fig. 7 pos. 2 value: 5)
  • Simultaneously pressing the lower left and right buttons turns on the simultaneous rotation of the left and right motors, the robot moves backward in a straight line (Fig. 7 pos. 2 value: 8)
  • If no beacon button is pressed, the robot stops (Fig. 7 pos. 2 value: 0).

When developing a remote control algorithm, you should know the following: when one of the combinations of gray buttons is pressed, the infrared beacon continuously sends the corresponding signal, if the buttons are released, then the signal is stopped. The exception is a separate horizontal gray button (Fig. 7 pos 2 value: 9). This button has two states: "ON" - "OFF". In the on state, the beacon continues to send a signal, even if you release the button (which is signaled by the lit green LED), to turn off the signal sending in this mode, press the horizontal gray button again.

Let's start implementing the program:

Our remote control algorithm provides 5 behavior options, respectively, our program block "Switch" will consist of five program containers. Let's set them up.

  1. Assign the default option when no button is pressed (Fig. 7 pos. 2 value: 0). Install in the container a software block that turns off the motors "B" And "C".
  2. Into the variant container of pressing the top left button (Fig. 7 pos. 2 value: 1) install the software block "Big Motor" including motor "B".
  3. Into the top right button press option container (Fig. 7 pos. 2 value: 3) install the software block "Big Motor" including motor "C".
  4. Into the option container by simultaneously pressing the top left and right buttons (Fig. 7 pos. 2 value: 5) install the software block "Independent motor control" "B" And "C" forward.
  5. In the container of the option of simultaneously pressing the lower left and right buttons (Fig. 7 pos. 2 value: 8) install the software block "Independent motor control", including the rotation of the motors "B" And "C" back.
  6. Let's place our customized programming block "Switch" inside the program block "Cycle".

According to the proposed scheme, try to create a program yourself, without looking into the solution!

Rice. 8

Load the resulting program into the robot and run it for execution. Try to control the robot with an infrared beacon. Have you succeeded? Do you understand the principle of implementing remote control? Try to implement additional control options. Write your impressions in the comments to this lesson.

* Want to see invisible waves? Turn on the photo mode in the mobile phone and bring the emitting element of the TV remote control to the mobile phone lens. Press the buttons on the remote control and watch the glow of infrared waves on the phone screen.

YL-63 Robot Car IR Obstacle Sensor (FC-51)
Smart Car Obstacle Avoidance Sensor Module Infrared Tube Module Reflective Photoelectric Sensor

The non-contact sensor YL-63 detects objects in the range of distances from almost zero to the set limit without coming into direct contact with them. Different manufacturers assign different names to the same device. Some call the presented sensor the name YL-63, others FC-51. The sensor is intended for use when information about the distance to the object is not required, but only about its presence or absence. The registration distance limit depends on the setting. The YL-63 sensor has a discrete output. This is an optical sensor that registers an increase in the intensity of reflected infrared (IR) radiation in a controlled space. The change in the reflected radiation occurs due to the moving parts of the mechanisms or the movement of surrounding objects. YL-63 can be placed on a moving object to determine the position in the surrounding space. It is used to detect obstacles in the movement of wheeled and tracked machines. The sensor can become part of a visual aid for students in the field of control systems and automation.
The device contains an IR radiation source and a photodetector. The radiation is reflected from an obstacle and is recorded by a photodetector. It transmits a signal to the LM393 comparator, which is configured to operate at a certain level of illumination of the photodetector. The comparator generates a signal at the output of the YL-63 sensor of a low or high logic level.

Optical sensor YL-63 belongs to the class of diffusion. The name of the group of sensors arose from the underlying multidirectional reflection of radiation in a sensor - the diffusion of radiation by a reflective surface.
The operation of the device is to determine the illumination of the photodetector. Since the YL-63 captures the reflected radiation, there is a distance measurement error caused by the different reflectivity of the surfaces of objects made of various materials.

Distance coefficients for reflection from various materials.

White matte paper 1
Cotton fabric 0,6
Gray PVC 0,57
Wood
faintly colored 0,73
raw 0,4
Plastic
White 0,7
the black 0.22
black rubber 0,2-0,15
brushed aluminum 1,2
Polished stainless steel 2,3

Different reflection and absorption of radiation from different materials are used for the operation of the tachometer receiving unit. Suppose we have . It is required to know the number of revolutions per minute of the motor shaft. YL-63 will help us out. It is enough to stick a piece of white paper on the flywheel, direct the sensor beam to the flywheel and get the tachometer receiving unit.
To reduce the consequences of various interferences, the processing microcontroller accumulates data received from the sensor in a short period of time and averages it. The YL-63 sensor can work in devices without MK.

Parameters

Supply voltage 3.3-5 V
Detection distance to a reflective white matte plane 0.02-0.3 m
Detection angle 35°
Dimensions 43 x 16 x 7 mm

Contacts

The obstacle sensor YL-63 aka FC-51 has a three-pin plug:
VCC - power,
GND - common wire,
OUT - exit.

Indicators

There are two indicators on the module board. A glow of green indicates that the power is on. The red LED lights up when an object is in the detection zone.

Setting the sensing distance

Setting up the device is facilitated by the operation of the detection indicator. This allows you to configure the YL-63 aka FC-51 to operate in real conditions. The sensor sensitivity is set using a variable resistor installed on the board. The obstacle is set at the required distance from the sensor photodevices. By turning the movable contact of the variable resistor on the board of the YL-63 module, the sensing distance is set, the red LED is switched on. Then the actuation distance is checked by moving the reflecting object. The setting is repeated at least three times.

Program for Arduino signal processingYL-63

The sensor signal is applied to pin 12 of the Arduino.

Void setup() (
Serial.begin(9600);
pinMode(12, INPUT);
}
void loop() (
Serial.print("Signal: ");
Serial.println(digitalRead(12));
delay(500);
}

Part of the robot is a board, so you can not be afraid that the wires of the robot will fall into its wheels. Even a beginner can create such a robot if the proper level of enthusiasm appears. Let's take a closer look at how you can create such a robot.

Materials and tools for manufacturing:
- directly the Arduino platform;
- two motors with gearboxes;
- layout;
- transistor for motor control;
- a breadboard of the average size;
- a small bar for the main platform;
- IR sensor (to determine the distance);
- one strong ball;
- wire;
- glue;
- wheels;
- rubber bands;
- collectors;
- ribbon;
- Batteries and case for them.


Of the tools you will need a soldering iron, a hacksaw and a screwdriver.

Robot manufacturing process:

Step one. Chassis manufacturing
The chassis is installed in the place where the engines will be mounted. And fastened, the motors will be with glue. To attach the wheels use two angle brackets. Superglue is used to attach them, but it would be more reliable to fix them with bolts and nuts.
A small marble ball must be wrapped with wires, but its upper part must be free. Two wires are soldered to the breadboard.







Step two. How to make wheels for a robot

Any wheels from children's toys of a suitable size are suitable as wheels. If there are none, then the wheels can be made from bottle caps yourself, for this, holes are drilled in their center. It is important at the same time that the wheels are well centered, otherwise the robot will drive crookedly.




Step three. How the engine works
In order to control motors, the H-Bridge Motor Driver 1A chip - SN754410 is well suited. Thanks to this device, you can control two motors at once, which rotate in different directions. More details on how the motors are connected can be found in the diagram. It happens that the chips start to heat up from a heavy load, this problem is solved by installing a radiator.






Step four. Why you need an IR sensor
The IR sensor is needed so that the robot can detect obstacles in front of it. As soon as it occurs, the sensor immediately sends a signal. In order for the IR sensor to work at any time of the day and under any conditions, a red LED is installed on the robot. The sensor is connected to the ninth pin of the Arduino. With the help of other contacts, the robot will be powered.


Step five. Robot brain device
The freeduino platform is used to control the robot, it is nothing more than a clone of the Ardunio platform. In addition, you can use a picaxe learning platform or any other microcontroller. First you need to make the main breadboard for the Arduino, for this you need to draw a line through the entire breadboard. It should cover pins 8 to 13, as well as the first four pins on the bottom row.
The robot is powered by four AA batteries, they are soldered to the main board in polarity.
There are four motor control outputs on the H-bridge chip. With it, you can adjust the speed of rotation of the motors.




Step six. Create a layout for the robot
The layout is not mandatory when creating such a robot, it is only needed if some experiments and improvements are constantly being carried out with the robot. To create a layout, a plastic tube is taken, which is glued to the robot's board. On the other side is a cardboard pad on which the Arduino is installed.


Step seven. Robot Power
The robot works thanks to four AA batteries, thanks to which the Ardunio is powered by a voltage of just over 5V. To make it easier to change the batteries, they can be installed in a special holder. Such a holder can be removed from children's toys, radios and other equipment. The weight of the batteries is of strategic importance here, as it acts as a counterbalance to the engines. If you use a lithium polymer type battery, they may not be heavy enough. In such a case, the weight on the side of the batteries will need to be added.

In this article, we will look at several robot schemes that implement the following behaviors:
1. Goes around an obstacle upon contact with it with "antennae".
2. Avoid obstacles without contact (IR bumper).
3. Rests "antennae" against an obstacle, drives back, makes a turn, then continues to move.
4. Avoids an obstacle with a turn (IR bumper).
5. Follows the subject while maintaining a distance (IR bumper).

Before proceeding to the consideration of the circuits, let's briefly analyze the features of the L293 chip.

Fig.1. The pinout of the L293D chip

Inside it there are two drivers for controlling electric motors.
The motors are connected to the OUTPUTs. We are able to connect two DC motors.
The 8th and 16th pins of the microcircuit are connected to the power plus. Separate power is supported, i.e. The 16th pin (Vss) is designed to power the microcircuit itself (5 volts), and the Vs pin (8th pin) can be connected to the power supply for the motors. The maximum voltage of the power section is 36 volts.
I will not separate them and in all circuits I will connect them to a common power source.
The power minus or ground (GND) is connected to pins No. 4, 5, 12, 13. These pins, in addition, provide a heat sink for the microcircuit, therefore, when soldering to the board, it is desirable to allocate an enlarged metallized area for these pins.
The microcircuit also has ENABLE1 and ENABLE2 inputs.
To turn on the drivers, you must have a logical unit on these pins, in other words, we connect the 1st and 9th pins to the power plus.
There are also INPUT inputs for motor control.

Fig.2. Correspondence table of logic levels at inputs and outputs.

Above is a table, according to which you can understand that if a logical unit is applied to the input INPUT1, i.e. connect to the plus of the power source, and the INPUT2 input to the minus, then the motor M1 will begin to rotate in a certain direction. And if you swap the logic levels at these inputs, then the motor M1 will rotate in the opposite direction.
The same happens with the second part, to which the M2 motor is connected.

It is this feature that is used in the presented schemes of robots.

Scheme No. 1. The robot goes around the obstacle when it comes into contact with the "antennae".

Fig.3. Scheme No. 1. With mechanical obstacle sensors.

After power is applied, the motors will rotate in a certain direction, moving the robot forward. This is due to the fact that INPUT1 receives a high level signal through resistor R2, as well as at INPUT4. Transistor VT1 is securely closed, the base is pulled to minus power, no current flows into the collector.
I will explain on the left side, because. both parts are symmetrical.
Logic 0 is set at the INPUT2 input through the resistor R3. Judging by the table (Fig. 2), the motor rotates in a certain direction. On the right side of the diagram, the same thing happens and the robot moves forward.
The circuit has switches (SB1, SB2), which are used as SPDT switches. Paper clips are attached to them with hot glue and obstacle sensors are obtained.

Fig.4. The "antennae" sensors are made of paper clips.

When such a sensor hits an obstacle, the key closes and the INPUT2 input is connected to the power plus, i.e. a logical "1" is applied. At the same time, the transistor also opens, as a result of which the logical unit at the INPUT1 input is replaced by a logical zero. The motor rotates in the opposite direction when the button is pressed. Microswitches occur jerkily and the motor turns the robot away from the obstacle until the sensor stops touching the obstacle.

As you may have guessed, the switches or the motors themselves need to be placed crosswise.

Scheme No. 2. Robot avoids obstacles without contact (IR bumper)

Even more interesting behavior can be realized if TSOP receivers are used as sensors for receiving infrared signals. It will be some kind of IR bumper.
So now the circuit looks like this.

Fig.5. Scheme No. 2. With infrared obstacle sensors.

The "IR receiving module" works like this: when an infrared signal arrives at the TSOP receiver, a negative voltage appears at its output, which unlocks the PNP transistor, and the current from the power supply goes to the input circuit of the microcircuit. If last time mechanical switches were used, with the so-called tendrils of paper clips, then the new scheme will allow the robot not to crash into an obstacle, but to react to it from a certain distance. It looks like this:

The receiving part is made in this way: two absolutely identical modules (left and right) fastened together (Fig. 8).

The receivers used are TSOP1136 with an operating frequency of 36 kHz. The location of the pins is shown in the figure below.

Fig.6. TSOP1136.

We figured out the receivers, but to detect obstacles, you need to send infrared radiation with a certain frequency into the space in front of the robot. The operating frequency of the receivers is different, in my case it is 36 kHz. Therefore, a pulse generator for a given frequency was assembled on the NE555 chip, and infrared emitting diodes were connected to the output.


Fig.7. Diagram of the emitter on the NE555.

A fragment of a breadboard is fixed on the chassis of the robot, on which you can install the desired number of IR diodes.
It is advisable to put heat shrink tubing or something similar on the diodes so that they shine forward, and not in different directions.

Fig.8. IR bumper.

After applying power, the robot may move backwards, this is due to the too high sensitivity of the TSOP receivers. They perceive the reflected signal even from the floor, walls and other surfaces. Therefore, a tuning resistor is used in the IR signal emitter circuit (Fig. 7), with the help of it we reduce the brightness of the infrared diodes and achieve the desired sensitivity.

Scheme No. 3. Such a robot drives back from an obstacle, making a turn.

Let's look at another interesting scheme.

Fig.9. Scheme No. 3.

When such a robot rests against an obstacle with one of its antennae, it drives back, making a small turn, then after a short pause, the robot continues to move. The behavior is shown in the animation below:

This circuit is also fully compatible with the infrared bumper from the previous circuit.

Electrolytic capacitors appeared in the circuit between the emitter and the base resistors of transistors VT1 and VT2. Diodes VD1, VD2 and LEDs HL1, HL2 appeared.
Let's take a look at why these additional components are needed.
So, when switch SB1 closes, i.e. the first sensor, the current from the power supply through the diode VD1 and the current-limiting resistor R1 is fed to the base of the transistor. It opens by changing the logic level at the input INPUT1, at the input INPUT2 the level also changes.
At this moment, the current also flows to the capacitor C1 and it is charged. Motor M1 abruptly changes the direction of rotation and the robot moves back from the obstacle. In the video, you can see that the second motor also changes direction, but for a shorter period of time. This is due to the fact that when the SB1 sensor is closed, the current from the power supply also flows to the right side of the circuit, through the HL2 LED. The LEDs not only provide a short-term signal of a collision with an obstacle, but also act as a voltage damper for the opposite half of the circuit. Simply put, when the key SB1 is closed, the capacitor C2 is charged less than C1. And when the key (sensor) SB2 is closed, the same thing happens, but vice versa - C2 is charged more (i.e., the voltage on its plates is greater). This allows not only to move away from the obstacle, but also to turn away from it a little. The angle of this turning depends on the capacitance of the capacitors C1 and C2. Capacitors with a capacity of 22 microfarads, in my opinion, are optimal. With a capacitance of 47 uF, the angle of rotation will be larger.
Also in the video you can see that after the robot drives back from the obstacle, there is a small pause before it moves forward. This is due to the discharging of the capacitors, i.e. at some point in time, the logical signals at the INPUT inputs are balanced and the driver stops understanding for a second in which direction to rotate the motor. But when C1 and C2 are discharged, the initial logic levels will be set at the INPUT inputs.
Diodes VD1 and VD2 prevent the discharge of capacitors through the LEDs HL1, HL2. The circuit does not work without LEDs.

Scheme No. 4. The previous diagram is with the IR bumper.

This scheme differs from the previous one in that infrared sensors (IR bumper) are used here instead of mechanical sensors.

Fig.10. Scheme No. 4.

The collectors of PNP transistors VT1 and VT2, when an obstacle is detected, will send a signal to the input circuit of the microcircuit. Then everything happens in the same way as it was described earlier, only such a robot, when it detects an obstacle in front of it, drives back, makes a turn, then continues to move.
The behavior is shown in the animation below:

The robot will have a sharper behavior if the capacitance of the capacitors C1 and C2 is reduced to, for example, 1 uF (minimum capacitance is 0.22 uF).

How to make the robot follow the object?

In all the schemes presented above, the sensors-sensors or the motors themselves must be arranged crosswise. And with a direct connection (when the left sensor "commands" the left engine, the right one - the right one), the robot will not avoid the obstacle, but rather follow it. Thanks to the direct connection, you can achieve a very interesting behavior of the robot - it will actively pursue the object, maintaining a certain distance. The distance to the object depends on the brightness of the IR diodes on the bumper (adjust).

Some more photos:

The chassis used metal parts from the designer. The breadboard leans back for convenience of replacement of batteries.

The robot is powered by 4 AA batteries.

The options for manufacturing the body and chassis for the robot are limited only by your imagination, especially since there are many ready-made solutions for sale. In my case, the circuit will be transferred to the board, because. a bunch of wires is not aesthetically pleasing. Batteries with a recharging circuit will also be installed. And what other improvements can be made or new features added - all this you can suggest in the comments.

This article has a video that describes in detail the operation of the circuits and demonstrates different options for the behavior of the robot.

List of radio elements

Designation Type Denomination Quantity NoteShopMy notepad
Elements of the scheme No. 1 and No. 2 (except for the IR bumper)
VT1, VT2 bipolar transistor

2N3904

2 To notepad
R1, R2, R4, R6 Resistor

10 kOhm

4 To notepad
R3, R5 Resistor

4.7 kOhm

2 To notepad
C1 100uF1 To notepad
Elements of the "IR reception module" in the scheme No. 2, No. 4
VT1, VT2 bipolar transistor

2N3906

2 KT361, KT816 To notepad
R1, R2 Resistor

100 ohm

2 To notepad
C1, C2 electrolytic capacitor10-47uF2 To notepad
Elements of the "radiation module of the IR signal" Fig. 7
R1 Resistor

1 kOhm

1 To notepad
R2 Resistor

1.5 kOhm

1 To notepad
R3 Variable resistor20 kOhm1 to adjust the brightness of FD1, FD2 To notepad
C1 Capacitor ceramic0.01uF1 To notepad
C2 Capacitor ceramic0.1uF1 To notepad
FD1, FD2 IR diode 2 Any