极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13714|回复: 8

OCROBOT智能小车(二)——小车基本行动

[复制链接]
发表于 2016-3-27 10:38:04 | 显示全部楼层 |阅读模式
本帖最后由 董董soul 于 2016-3-27 10:40 编辑

让小车跑起来,除了写好程序,硬件的连接也是很重要的,首先,我来给大家详细的解释一下电机驱动板的使用,这是小车跑起来的核心部分,我看过很多小车的相关帖子,关于这一块,我发现写得都不是很详细,在此,尽一下自己的绵薄之力,给大家详细的讲一下。
1、L298N驱动板(大众通用版)
  
  这款板子是最常见、最常用的,适用各种开发板,但是新手小白一拿到它,都看不懂呀,线要怎么连接呀?什么脚呀什么功能啊?使用手册上面也没有具体明白到教你线怎么连接,所以一头雾水。
  首先,来看一下我画的示意图:
   
   接线是这么接的,在此提醒两点:四个马达的话,可以并联接在A处,B处,两两并。
   还有最重要的一点,板子上的5V一定要接在主控板上,因为那个是给后面那个黑色高高的芯片供电的,这是正确的使用方法,虽然不接也能用,但是损耗肯定相对来说,大一点。
   然后,我来说一下各个脚的对应关系,先看图:
  
  INT1——OUT1、INT2——OUT2、INT3——OUT3、INT4——OUT4、
  看过使用手册的人一定知道这张表:
  
  所以可以看到,只要给予INT1、2、3、4对应的GPIO口高低电平,即可实现电机的正反转,而设定GPIO的高低电平,在程序里面即可实现。
2、L298P驱动板(OCROBOT的为例)
  
  极限电压24V,极限电流2A。
好了,介绍完驱动板的连接,放上代码,来测试一下,测试完毕,就可以编程序,让小车动起来了!
L298N代码
  1. void setup() {
  2.   pinMode(1,OUTPUT);
  3.   pinMode(2,OUTPUT);
  4.   pinMode(3,OUTPUT);     //将连接的GPIO口,全部设置为输出状态
  5.   pinMode(4,OUTPUT);
  6. }

  7. void loop() {
  8.   digitalWrite(1, HIGH);      
  9.   digitalWrite(2, LOW);      //电机A正转
  10.   digitalWrite(3, HIGH);     
  11.   digitalWrite(4, LOW);       //电机B反转
  12.   delay(1000);       //停止1S
  13. }
复制代码



L298P的代码
  1. void setup()
  2. {
  3.   pinMode(12,OUTPUT);
  4.   pinMode(3,OUTPUT);
  5.   pinMode(9,OUTPUT);     //启用电机A的三个管脚,全部设置为输出状态
  6.   pinMode(13,OUTPUT);
  7.   pinMode(11,OUTPUT);
  8.   pinMode(8,OUTPUT);     //启用电机B的三个管脚,全部设置为输出状态


  9. }

  10. void loop()
  11. {
  12.   digitalWrite(9, LOW);       //松开电机A的制动
  13.   digitalWrite(3, HIGH);      //采用全功率输出
  14.   digitalWrite(12, HIGH);     //设置方向为正向  
  15.   digitalWrite(8, LOW);       //松开电机B的制动
  16.   digitalWrite(11, HIGH);      //采用全功率输出
  17.   digitalWrite(13, HIGH);     //设置方向为正向
  18.   delay(1000);                 //运行1秒
  19.   digitalWrite(9, HIGH);     //电机停止运行
  20. digitalWrite(8, HIGH);     //电机停止运行
  21.   delay(1000);               //维持1秒钟

  22. }
复制代码


如果下了程序之后,轮子不转,怎么办?
请检查一下步骤:
1、电机是否坏了?
2、驱动板是否亮灯?
3、接线是否接错了?
4、接触是不是不良?
5、主控板跟驱动板是不是都供上电了?(两个电源是不一样的哦!)
6、程序有没有写错?
7、杜邦线是坏的!

以上,就拿个万用表测测测吧!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2016-3-27 19:55:05 | 显示全部楼层
董妹纸,不错哦
回复 支持 反对

使用道具 举报

发表于 2016-3-27 21:21:00 | 显示全部楼层
董小姐,和您推荐一下用BOXZ的库,支持市面上90%的电机驱动板了

http://wiki.geek-workshop.com/doku.php?id=arduino:libraries:boxz
回复 支持 反对

使用道具 举报

发表于 2016-3-28 07:51:40 | 显示全部楼层
这是要解决问题,还是抛出问题,还是设问句?哈哈……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-28 09:59:45 | 显示全部楼层
PINKWALKMAN 发表于 2016-3-28 07:51
这是要解决问题,还是抛出问题,还是设问句?哈哈……

那我改成!
我的意思是当遇到这些问题的时候,反问你自己
回复 支持 反对

使用道具 举报

发表于 2016-3-28 10:30:54 | 显示全部楼层
问一下:
直接用arduino和L298n就能直接实现小车的制作,为什么还要加上OCROBOT?
OCROBOT这个堆叠在arduino上有什么优点和作用?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-28 11:14:44 | 显示全部楼层
血阳 发表于 2016-3-28 10:30
问一下:
直接用arduino和L298n就能直接实现小车的制作,为什么还要加上OCROBOT?
OCROBOT这个堆叠在ardu ...

对呀,后者的优势就在于,你不用接INT1.2.3.4的线了,而且板子还有制动的功能
回复 支持 反对

使用道具 举报

发表于 2016-3-28 11:22:31 | 显示全部楼层
董董soul 发表于 2016-3-28 11:14
对呀,后者的优势就在于,你不用接INT1.2.3.4的线了,而且板子还有制动的功能

哦哦。了解了。学习了~
回复 支持 反对

使用道具 举报

发表于 2016-3-28 13:19:48 | 显示全部楼层
谢谢楼主分享!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 08:51 , Processed in 0.041972 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表