Arduino智能小车设计(四)

168
0
2020年12月17日 09时14分

到今天为止,智能小车的三种功能也算全部完成了。(做蓝牙模块异常的顺利)接下来就是焊接矩阵键盘,将这三种功能合并在一块了。可能还会需要一段时间,包括矩阵键盘的焊接,代码的规整,所有硬件的加入,功能排障以及优化。

 

做小车应该是学嵌入式的一个最基本的项目,就因为是第一个,所以我想尽全力的把它做好,也算是一个好的起点。博客也算是其中的一项(尤其是像我这种有时候表达不清的,所以写博客也算是慢慢提高自己的表达能力吧)。

 

好了,今天继续来介绍元件吧,不出意外,这期是元件介绍的最后一期。

 

6.SG90 舵机

 

介绍:舵机,也叫做伺服马达,内部控制系统是具有闭环控制系统的机电结构。(用这个来控制超声波避障的)

 

1

 

基本工作原理:SG90舵机模块的的原理主要是由核心闭环控制系统发出PWM(脉冲宽度调制)信号给舵机,然后信号在电路板上得到IC处理之后计算出转动的角度, 根据设定的角度驱动无核心马达转动,通过减速齿轮给摆臂以动力,在此同时电位器返回当前的位置信号,判断是否已经到达设定位置。

 

使用代码:

 

#include<Servo.h> 

Servo myservo

void setup()
{
	myservo attach(9);
}
void loop()
{
  myservo.write(0);  
  delay(1000);  
  myservo.write(80);  
  delay(1000);  
  myservo.write(160);  
  delay(1000);  
  myservo.write(80);  
  delay(1000);  
  myservo.write(0);  
  delay(1000);  
}

 

一个简单控制舵机的代码,Servo头文件是Arduino自带的,比较方便控制舵机。当然如果你想自己控制舵机,可以另设一个函数来单独控制舵机。代码总体比较清晰,就是模块输出口接9号引脚,然后舵机先转到0°,再到80°,再到160°,再到80°,0°,然后一直循环,中间每转一次都会延迟1s。

 

连接示意图:
棕色 : 接地线
红色 : 接电源正极线
橙色 : 模块信号输出引脚

 

引脚说明:

 

颜色 引脚
棕色线 GND
红色线 5V
橙色线 D10

6.HC-05主从一体无线蓝牙模块

 

介绍:通过与手机,电脑或者其他智能终端配对,来实现控制你小车的运动。

 

2

 

基本工作原理:
蓝牙大家都用过吧,就是两个设备连接,从而进行控制。

 

模块默认的波特率为9600,默认配对密码是1234,默认的名称是HC-05。配对后,只需要当成固定波特率的串口一样使用即可,因此只要是以“固定波特率,八位数据位,无奇偶校验”通信格式的串口设备都可以直接取代原来的有线串口而不需要修改程序。如数据采集,智能车,串口打印机,户外点阵调频控制等。

 

使用代码:

 

void setup()
{
  Serial.begin(9600);
}
 
void loop()
{
  while(Serial.available())
  {
    char c=Serial.read();
    Serial.println(c);
  }
} 

 

蓝牙连接后,因为相同的波特率,所以输入信息后,可以顺利的打印字符,从而执行了串口监视器的功能。

 

3

 

连接示意图:
VCC:接Arduino的5V或者3.3V
GND:接Arduino的GND
TXD:发送端,接Arduino的RX
RXD:接收端,接Arduino的TX

 

我的想法:

 

1.模块大致就介绍完了,还有电池什么的就不打算说了,因为太过于常见了。今天是五一节假的第二天,也算是没有荒废假期。后续就要开始软件代码的说明和自己所遇到的问题,实在是太多太多。可能每个新事物都会对小白不太友好,但是我也有坚持下来的动力。
2.小车是我和同组成员一块完成的,幸好是两个人,默契度到了,效率真的提高了不少,在此感谢一下我的伙伴:508老干部。

 

加油!

发表评论

后才能评论