目录
有线控制Arduino汽车
对于学校的一个小实践项目,我决定使用ardiuno作为操作系统制作可控制的汽车。我们还使用3d打印机制作其中一个部件。
你需要以下的东西
- 很多乐高
- 乐高转向系统
- Arduino的
- df机器人电机屏蔽
- 1个motorkit
- 1个电动机
- 焊接套件
- ethernetcable(3M)
- 2节9V电池
- 10根arduino电缆
- pentometer
- 2个按钮
第一步:制作底板
首先,我们需要一个基地来建造我们的汽车。电机套件附带自己的底座和螺栓来固定电机。但由于我们想在我们的构建中使用lego,我们决定使用3D打印机制作自己的基础。我们设计了一个类似于原始底座的底座,并添加了乐高积木和车轮转动的空间。
第二步:组装汽车
我们使用电机套件中的模板将引擎连接到汽车底座。我们还使用乐高来构造转向装置和悬架。为了控制方向盘,我们使用了一个cervomotor并控制所有的发动机,我们使用了一个我们固定在arduino上的汽车。
第三步:编码
对于arduino,我们使用了引擎和cervomotor的代码。我们在这里包含了代码。然后我们建立一个面包板来构建一个小控制器。我们连接按钮并将前进按钮连接到10,将后退按钮连接到11.然后我们将伺服连接到arduino,如此处所示。我们在面包板和arduino之间焊接了一根以太网电缆,给我们一点点长度。
源代码如下
#include "Servo.h"
int E1 = 5;
int M1 = 4;
int E2 = 6;
int M2 = 7;
Servo myservo; // create servo object to control a servo
int potpin = A0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
void setup() {
pinMode(M1, OUTPUT);
pinMode(M2, OUTPUT);
pinMode(11, INPUT_PULLUP);
pinMode(10, INPUT_PULLUP);
myservo.attach(9);
}
void loop() {
//servo
val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
val = map(val, 0, 1023, 180, 0); // scale it to use it with the servo (value between 0 and 180)
myservo.write(val); // sets the servo position according to the scaled value
delay(15); // waits for the servo to get there
//forward
if (digitalRead(10) == LOW) {
//Button two is pressed!
digitalWrite(M1, HIGH);
digitalWrite(M2, HIGH);
analogWrite(E1, 250); //PWM Speed Control
analogWrite(E2, 250); //PWM Speed Control
}
//backward
else {
if (digitalRead(11) == LOW) {
//Button two is pressed!
digitalWrite(M1, LOW);
digitalWrite(M2, LOW);
analogWrite(E1, 250); //PWM Speed Control
analogWrite(E2, 250); //PWM Speed Control
}
else {
analogWrite(E1, 0); //PWM Speed Control
analogWrite(E2, 0); //PWM Speed Control
}
}
}
第四步:完成
Aaaah ……你终于完成了建筑。现在您可以开始测试您的构建。如果您的构建不起作用,请确保检查以下内容:
- 没有电线干扰或短路。
- 焊接工作正确完成
- 你的电池不是空的
希望你能快速发现它是什么!玩的开心。
✗不舒服✗ 看着真困难。。。程序勉强可以用吧。。。希望楼主多发一些arduino的项目