Author:Li Jiajun, Chang Ruikang, Zhang Zhibin, Li Shibin, Gao Huazhuo
Unit: Shanxi Institute of Energy
Instructor:Zhao Haocheng, Gao Min
As the main body of renewable natural resources and terrestrial ecology on the earth, forests play an irreplaceable role in the history of human survival and development, it can not only provide wood and forest by-products needed for national construction and people's lives, but also shoulder the release of oxygen to regulate the climate and environment, conserve water sources, maintain water and soil, prevent wind and sand fixation, beautify the environment, purify the air, reduce noise and tourism and health care, and other missions, at the same time, forests are also an important condition for stable and high yield of agriculture and animal husbandry. However, forest fires are the most dangerous enemy of forests, the most terrible disasters of forestry, and can also bring the most harmful and devastating consequences to forests. Forest fires not only burn down patches of forests and harm the animals in the forests, but also reduce the ability of forests to regenerate, cause soil impoverishment and destroy the role of forests in conserving water, and even cause the ecological environment to lose balance. On March 30, 2019, a very serious forest fire broke out in Muli County, Liangshan Prefecture, Sichuan Province. On March 30, 2019, it was a rainy day, and there was a thunderstorm near Lama Sigou in Muli County at about 5 p.m., although it was only a shower that lasted about 30 seconds, but the rumbling thunder kept echoing in the sky, endlessly. At 6 o'clock in the afternoon, a forest fire quietly came on the mountain, the first point is located on the mountain at an altitude of more than 3,800 meters, the terrain in the mountain is complex, full of ravines, both the traffic and communication situation is very bad, and it is difficult for firefighters to quickly rush to the scene for rescue. After the relevant departments learned the news, the preliminary judgment of the cause of the fire may be due to the lightning strike at the previous two times, many ** points are located on the cliff, the average altitude of the fire is as high as 4 kilometers. On the afternoon of the 31st, 689 firefighters climbed the mountain with various equipment and went to the primeval forest at an altitude of more than 4,000 meters to carry out firefighting work. The firefighters were evacuated safely on one of the routes, and the 27 forest firefighters and three local firefighters on the other road lost contact with the others. At 6:30 a.m. on April 2, the open fire on Tian Volcano Mountain was finally extinguished. The production of forest isolation belt is an effective way to effectively stop the spread of forest fires, and most of this aspect is completed by manual landing, so we designed an all-terrain robot that can realize the integration of cutting and transportation through remote control, so as to reduce the demand and danger of labor. At the same time, most of the logging in current life is carried out manually in the field, and our works can also replace it to complete systematic operations.
The main function of this group's work is to enter the fire site in time when a fire breaks out, and to cut down trees in areas that have not yet been involved, so as to reduce the fire area. This trolley is an all-terrain trolley, which can adapt to various terrains in the forest, such as hillsides, pits, etc. There is a grab clip on one side of the trolley, and after the tree is cut down on the other side, the grab clip can pick up the branches and put them in the back of the car in time, and finally the car will take them out of the forest. At the same time, there are cameras and humidity sensors in the front of the trolley to monitor and record the fire situation in real time. This work can be used not only as an integrated work to make isolation belts in forest protection, but also as an integrated robot for logging in daily life.
There are two main types of forest fires: man-made fires and natural fires. Man-made fires include: productive fire sources (fire used in agricultural, forestry and animal husbandry production, fire used in forestry sideline production, industrial and mining transportation production fire, etc.), non-productive fire sources (outdoor smoking, cooking, paper burning, heating, etc.), intentional arson. Natural fires include: lightning fire, spontaneous combustion, etc. Since the vast majority of forest fires in China are caused by smoking, burning wasteland and burning paper on graves, our group site simulated the cause of forest fires. In the actual terrain, there will be hillsides and small faults, and our team simulated the robot climbing small hills and climbing small steps (faults) during the simulation. At the same time, the process of cutting down trees is simulated, and after the felling is completed, the gripper on the other side of the car will pick up the trees and carry them out of the forest. When rescuing and cutting down trees, the camera in front of the vehicle can monitor the surrounding situation in real time, and can record the real-time dynamics of the surrounding area when the tree is being cut down, and the humidity sensor can monitor it in real time.
Mechanical structure: The overall body is divided into two parts, the front body uses a flexible structure, and adopts crawler wheels, and the rear uses traditional tires, which has a good grip. The body of the car roughly combines the superiority of the tracks of the military tank and combines the actual situation, and the rear tires are modified, so that the front and rear wheels can be coordinated, so as to smoothly climb over some obstacles encountered on the way to work.
Drive system: the car is equipped with 6 dual DC motors to drive together, six motors drive at the same time, provide enough power for the trolley, reduce the loss of power, provide enough power conditions for passing obstacles, the chainsaw has a single servo made of mechanical arm and motor control of the chainsaw body to achieve horizontal free extension, cut down trees. The mechanical claw is composed of two servo-controlled mechanical arms and a single servo-controlled claw body, which can realize lateral extension and adjust the swing of the claw to achieve grasping.
Control system: The motherboard adopts the BASRA main control board, which is connected to the computer through the ESP8266 Wi-Fi module to achieve remote real-time unlimited operation, and provides real-time feedback on the scene through the camera and temperature and humidity sensor, providing information and help for people's survey and rescue.
Perception system: the whole operation of the car body is operated by manual in real time through the wifi module in the remote range, the front and middle sections of the car body are equipped with cameras, the front camera can help us lock the direction of the target tree, can also avoid obstacles, the camera at the side end can locate the number of targets, when it enters the appropriate position after cutting and handling. At the same time, the top of the car is also equipped with a temperature and humidity sensor to monitor the surrounding environment and provide timely feedback to provide guarantee for manual rescue operations.
#include
int _abvar_1_data = 0 ;
int in1 = 5;
int in2 = 6;
int in3 = 9;
int in4 = 10;
int in5 = 12;
int servo_speed=20;Defines how fast or slow the servo turns.
int action_delay=200;Define the time interval for each state for all servos.
servo myservo[4];
int f = 50;Defines the number of times the servo rotates between each state, and thus determines the angle of each rotation of each servo.
int servo_port[4] = ;Define the servo pins.
int servo_num = sizeof(servo_port) / sizeof(servo_port[0]);Defines the number of servos.
float value_init[4] = ;Defines the initial angle of the servo.
10, 110, 20, 40chu 100, 110, 60, 30 kaishi 100, 40, 60, 30zhua 100, 40, 40, 30qi 10, 40, 60, 30weizhi
float value_init[6] = ;Defines the initial angle of the servo.
float value_init[6] = ;
void setup()
serial.begin(9600);
pinmode(in1, output);
pinmode(in2, output);
pinmode(in3, output);
pinmode(in4, output);
pinmode(in5, output);
for(int i=0;ivoid servostart(int which)
if(!myservo[which].attached())myservo[which].attach(servo_port[which]);
pinmode(servo_port[which], output);
void servostop(int which)
myservo[which].detach();
digitalwrite(servo_port[which],low);
void servogo(int which , int where)
if(where!=200)
void servo_move(float value0, float value1, float value2, float value3)
float value_arguments = ;
float value_delta[servo_num];
for(int i=0;ifor(int i=0;i/ serial.println();
**Serial port view output***
for(int j=0;jdelay(servo_speed);
delay(action_delay);
void loop()
servo_move(10, 40, 20, 40);
delay(500);
servo_move(100, 20, 20, 40);
delay(500);
servo_move(100, 110, 20, 40);
delay(500);
servo_move(100, 110, 60, 40);
delay(500);
servo_move(100, 40, 60, 40);
delay(500);
servo_move(10, 40, 60, 40);
delay(500);
servo_move(10, 40, 20, 40);*/
abvar_1_data = serial.read()
if ((abvar_1_data ) == ( 1 )
analogwrite(in1, 0);
analogwrite(in2, 0);
analogwrite(in3, 0);
analogwrite(in4, 160);
delay (10);
if ((abvar_1_data ) == ( 2 )
for(int i=0;i<10;i++)
analogwrite(in1, 160);
analogwrite(in2, 0);
analogwrite(in3, 0);
analogwrite(in4, 0);
delay (10);
if ((abvar_1_data ) == ( 12 )
for(int i=0;i<10;i++)
servo_move(190, 40, 20, 130);
analogwrite(in1,150);
analogwrite(in2,0);
analogwrite(in4,150);
analogwrite(in3,0);
delay (1000);
if ((abvar_1_data ) == ( 3 )
analogwrite(in1,150);
analogwrite(in2,0);
analogwrite(in4,150);
analogwrite(in3,0);
delay (1000);
if ((abvar_1_data ) == ( 0 )
analogwrite(in1,0);
analogwrite(in2,0);
analogwrite(in4,0);
analogwrite(in3,0);
if ((abvar_1_data ) == ( 4) )//jixiebi1
servo_move(10, 40, 40, 130);
delay(500);
delay(500);
delay(500);
analogwrite(in5, 250);
delay(500);
if ((abvar_1_data ) == ( 5) )//jixiebi1
servo_move(10, 40, 20, 60);
delay(500);
analogwrite(in5, 0);
if ((abvar_1_data ) == ( 7) )//10, 110, 20, 40chu 100, 110, 60, 30 kaishi 100, 40, 60, 30zhua 100, 40, 40, 30qi 10, 40, 60, 30weizhi
servo_move(100, 110, 60, 30);
delay(500);
if ((abvar_1_data ) == ( 8) )//qi
servo_move(100, 40, 60, 30);
delay(500);
if ((abvar_1_data ) == ( 9) )//fan
servo_move( 100, 40, 40, 30);
delay(1000);
if ((abvar_1_data ) == ( 10) )//fan
servo_move( 10, 40, 60, 30);
delay(1000);
if ((abvar_1_data ) == ( 11) )//fan
servo_move(10, 40, 20, 40);
delay(500);
servo_move(100, 20, 20, 40);
delay(500);
servo_move(100, 130, 20, 40);
delay(500);
servo_move(100, 130, 50, 40);
delay(500);
servo_move(100, 40, 50, 40);
delay(500);
servo_move(10, 40, 50, 40);
delay(500);
servo_move(10, 40, 20, 40);
The trolley travel structure uses the "Tai Chi" rigid and flexible combination to climb over obstacles. When the trolley encounters a slope with a certain angle, the wheels composed of the rigid material of the trolley can come in handy at this time, and the rotation degree of the track is adjusted, so that the trolley will not launch the tube forward and backward in the process of going uphill. When the trolley encounters the ground environment with cliffs (steps), the wheels made of flexible materials can make pitching and raising movements by adjusting the freedom of the front wheels and the distance between the front wheels and the rear wheels, so as to easily climb the cliffs (steps}. At the same time, the wheels composed of two different materials also solve the problem of slippage in the process of moving, so that the stability of the car is higher. Secondly, the robotic arm of the trolley can rotate 180°, which not only makes the trolley have a wider range of contact when working, but also reduces the volume of the car, thereby speeding up the speed of the trolley, and the body can also be maintained to the best position during this period. During this period, at the same time, the small size of the trolley can be taken advantage of, and the work can be carried out smoothly through the small tunnel. Finally, the trolley we designed makes its center of gravity concentrate in the center of the whole trolley, which reduces the situation that the trolley leans forward or backward on the way through the obstacle work, thereby overturning, and strengthens the stability of the trolley.
This work is equipped with different mechanical structures on the left and right sides, and its effective and reasonable position and structural design should be carried out to ensure its corresponding cooperation with other sensors.
The trolley needs to pass through different obstacle structures during operation, and because the body is small, it is important to master the balance of the trolley when climbing the steps and going uphill to prevent it from rolling over. Therefore, when we are going up (down) the slope (step), we will swing the left and right robotic arms to the front (back) for balance.
After the car cuts down the designed barrier trees, when they are pulled out from the back of the car, how to find the most suitable route to pull away the trees, so as to prevent other trees from blocking the cut trees from evacuating the fire source on the way.
More details can be found here: [S043] Forest Ranger