Post

制造技术基础训练D——机器人创意实践

记一次全天的“金工实习”

制造技术基础训练D——机器人创意实践

机器人创意实践

早八工训楼谁受得了,偏偏让我们碰上了,一上就上一天,8:00-16:55一秒不耽误。

整个实习过程都是围绕展开,机械部分没看出来用得什么器材,硬件使用Basra Arduino开发板与BigFish扩展版。

一开始就是按照电脑上的PPT开始超级拼装,有很多细节需要注意,尤其是安装电机的时候。老师查验完之后会下发开发板和蓝牙模块。最终任务就是进行机器人抢球大赛,允许使用舵机构建一个铲子把场地中的球、方块放到指定的有围挡的区域。

四人为一小组来展开实验,老师很逆天地按学号分组,但也很幸运地遇到了全场最佳机械师和全场最佳操作员,最后我们以4分夺得冠军,算是完美收官。

成果展示

img

代码展示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#include <Servo.h>

int ANGEL = 1;
Servo servo_pin;

void setup(){
    pinMode(5, OUTPUT);
    pinMode(6, OUTPUT);
    pinMode(9, OUTPUT);
    pinMode(10, OUTPUT);
    servo_pin.attach(3);
    Serial.begin(9600);
}    

void loop(){
    bluetooth();
}


void bluetooth(){
    if(Serial.available() > 0){
        char cmd = Serial.read();
        switch(cmd){
            case 'F':
              _forward();
              break;
            case 'B':
              _backward();
              break;
            case 'L':
              _turn_left();
              delay(150);
              _stop();
              break;
            case 'R':
              _turn_right();
              delay(150);
              _stop();
              break;
            case 'S':
              _stop();
              break;
            case 'N':
              _turn();
              break;
            case 'S':
              _stop();
              break;
            case 'U':
              _up();
              break;
            case 'D':
              _down();
              break;
        }
    }
}

void _up(){
    if(ANGEL < 210)ANGEL+=10;
    servo_pin.write( ANGEL );//舵机角度
}
void _down(){
    if(ANGEL > 10)ANGEL-=10;
    servo_pin.write( ANGEL );
}

void _forward(){
  digitalWrite( 5 , HIGH );
  digitalWrite( 6 , LOW );
  digitalWrite( 9 , HIGH );
  digitalWrite( 10 , LOW );
  
}

void _stop(){
  digitalWrite( 5 , LOW );
  digitalWrite( 6 , LOW );
  digitalWrite( 9 , LOW );
  digitalWrite( 10 , LOW );

}

void _backward(){
  digitalWrite( 5 , LOW );
  digitalWrite( 6 , HIGH );
  digitalWrite( 9 , LOW );
  digitalWrite( 10 , HIGH);
}
void _turn_right(){
  digitalWrite( 5 , LOW );
  digitalWrite( 6 , LOW );
  digitalWrite( 9 , HIGH );
  digitalWrite( 10 , LOW );
}
void _turn_left(){
  digitalWrite( 5 , HIGH );
  digitalWrite( 6 , LOW );
  digitalWrite( 9 , LOW );
  digitalWrite( 10 , LOW);
}
void _turn(){
  digitalWrite( 5 , HIGH );
  digitalWrite( 6 , LOW );
  digitalWrite( 9 , LOW );
  digitalWrite( 10 , HIGH);
}

相关资料下载

课件:已上传至BIT101 Onedrive,位于【制造技术基础训练D】,课程编号:100031315, ⬇️ 下载文件

操控软件:Arduino Bluetooth Controller,使用这个软件是因为老师给的软件实在太老,在部分手机上即使正常安装也无法正常运行,所以选用一个新软件,亲测可用,⬇️ 下载文件。需要注意的是,这个下载地址是uptodown.com,我在官网并没有找到下载地址。

This post is licensed under CC BY 4.0 by the author.