2、小车前进实验

您当前位置: 首页 > 树莓派-4WD小车 > 编程语言视频教学

C语言_wiringPi版本程序下载

advance.c  点击下载

Python语言_版本程序下载

advance.py  点击下载

实验二:树莓派平台-------小车前进实验

 

1、实验前准备

blob.png

              1-1 树莓派主控板

      

blob.png

1-2  4个直流减速电机

      

2、实验目的

  SSH登录树莓派后./运行之后,先延时2s,一直循环前进1s。

 

3、实验原理

    对于4路直流减速电机的控制我们采用的是TB6612FNG驱动芯片来驱动电机。通过控制驱动芯片的AIN1,AIN2,BIN1,BIN2,PWMA,PWMB的电平高低来控制电机的正转,反转,停止。本次实验主要是控制AIN1为高电平,AIN2为低电平,BIN1为高电平,BIN2为低电平,进而通过控制PWMA,PWMB在0-255之间控制小车的速度。一路PWM控制小车一侧电机的速度。

 

4、实验步骤

4-1.看懂原理图

blob.png

 

                        图4-1 树莓派电路图

blob.png

                    图4-2 电机驱动芯片TB6612FNG

blob.png

图4-3 树莓派40PIN引脚对照表

 

4-2 由电路原理图可知AIN1,AIN2,PWMA,BIN1,BIN2,PWMB分别接在树莓派主控板上的40,38,36,37,35,33物理引脚上。

         AIN1-----40----29(wiringPi编码)

         AIN2-----38----28(wiringPi编码)

         PWMA-----36----27(wiringPi编码)

         BIN1-----37----25(wiringPi编码)

         BIN2-----35----24(wiringPi编码)

         PWMB-----33----23(wiringPi编码)

blob.png

图4-4 引脚控制逻辑表

4-3 程序代码如下:

 

注:因为树莓派的40pin均可作为普通的GPIO口来使用,想用到PWM,则需要用到wiringPi中的软件PWM库。可以在任意的树莓派GPIO上输出PWM信号。使用前需包含相应的头文件:

#include

#include

当编译程序时,必须加上pthread库,如下:

gcc advance.c -o advance -lwiringPi -lpthread

 

具体详情见树莓派软件与文档文件夹中的wiringPi用户手册!

 

blob.png

blob.png

输入:

/*进入到SmartCar文件夹*/

① cd SmartCar  

/*编译*/     

gcc advance.c -o advance -lwiringPi -lpthread

/*运行advance程序*/ 

 ./advance

blob.png

即可看到小车前进的现象。

接着执行

/*初始化引脚*/ 

④ ./initpin.sh