濠滨论坛

点击扫描二维码

查看: 5483|回复: 30

[科普] Arduino小车诞生记

[复制链接]

该用户从未签到

发表于 2015-10-8 17:56 | 显示全部楼层 |阅读模式 来自:江苏

/gkimage/e5/fb/e0/e5fbe0.png

/gkimage/e5/fb/e0/e5fbe0.png
DIYer:                        ifeller                制作时间:                        2天                制作难度:                        ★★★★☆                GEEK指数:                        ★★★★☆                 想必每位有志于在机器人领域发展,为人类未来创造更加美好生活的有志之士(废话也是必不可少的)入门必不可少接触的一个练手之物便是智能小车,但是,一套现成的智能小车全套下来要上千大洋,所以我觉得我自己可以动手DIY一台这样神车出来,一来满足一下我练手的需要,二来将本人用万能板制作Arduino扩展板的经验介绍给大家。爱DIY,爱机器人,就一起来动手证明一下你自己吧。不当之处望大家指正。
8 m) V7 o' Y8 Y5 m" E9 X9 M/ z# ^整车尺寸:135*138*85mm
  t6 x  u' Q( S双向电梯. d* S# @9 H; x7 |0 o( K; m. K! R
1   材料和工具        2   结构制作部分        3   电路制作部分        4   程序部分 1   材料和工具

/gkimage/41/c9/7s/41c97s.png

/gkimage/41/c9/7s/41c97s.png
工具如图 材料:
% ^$ h1 |* a! V* d9 v360度连续旋转舵机两个        铝合金型材若干        万向轮*1        arduino核心板*1        ST188光电传感器*2        LM339N电压比较器*1        103电位器*4        IN4007二极管*1        发光二极管*5        L7805CV*3        47uf电解电容6        107钽电容*1        1K电阻*5        10K电阻*4        微动开关*2        11.1V锂电池*1(航模用,不用担心功率不足)        各种杜邦线、插头若干(用起来方便到爆)

/gkimage/51/gh/v1/51ghv1.png

/gkimage/51/gh/v1/51ghv1.png
部分零件图 2   结构制作部分

/gkimage/n3/2j/85/n32j85.png

/gkimage/n3/2j/85/n32j85.png
加工好的全部的铝合金组件(全部手工)

/gkimage/pj/kq/br/pjkqbr.png

/gkimage/pj/kq/br/pjkqbr.png
机械结构组装好后就基本成型了,黑色的是绝缘电工胶带,便于安放各种电路板。

/gkimage/bl/kp/6g/blkp6g.png

/gkimage/bl/kp/6g/blkp6g.png

/gkimage/ud/vm/v5/udvmv5.png

/gkimage/ud/vm/v5/udvmv5.png
这个轮子是在街上买的万向轮然后把轮子单独拆了下来,轮子厚20mm,直径50mm。        轮子通过舵机的摆臂固定上,这样很方便的连接舵机。        万向轮装上去,万向轮高35mm,后面俩轮子装到舵机上底板正好离地35mm,万向轮装上去正好合适,很幸运。

/gkimage/r6/qs/v8/r6qsv8.png

/gkimage/r6/qs/v8/r6qsv8.png
顺便说下,上图中前面那个杆是用来安装光电传感器的,由于没法直接打上孔往上装,必须解决跟万向轮凸起的那个冲突,我就画上一个弧线然后用锉磨了出来,磨出来还很满意。

/gkimage/7h/zy/0n/7hzy0n.png

/gkimage/7h/zy/0n/7hzy0n.png
这个构件是装中间两个光电传感器的(这两个光电传感器视功能可选) 3   电路制作部分

/gkimage/qd/2q/t6/qd2qt6.png

/gkimage/qd/2q/t6/qd2qt6.png
这我从网上买的光电传感器及其基于LM339N的电压比较器。        但是用买来的光电传感器各种测试不理想,而且还得用导线跟Arduino连接,所以我就有了自己DIY的念头。我专门花一周时间学习了Altium designer 9,所以参考别人的光电传感器电压比较强模块我画了原理图也大致用PCB规划了一下走线,然后用万能板焊接,这个过程之后还是相当有成就感的。

/gkimage/j8/11/2c/j8112c.png

/gkimage/j8/11/2c/j8112c.png
光电传感器模块        Header2方便接跳线帽,可以选择是加电就返回信号,还是对发光二极管控制才返回信号,我用的加电就返回信号。

/gkimage/nn/et/h3/nneth3.png

/gkimage/nn/et/h3/nneth3.png

/gkimage/cd/ee/on/cdeeon.png

/gkimage/cd/ee/on/cdeeon.png
模块的走线规划。

/gkimage/9k/fa/0d/9kfa0d.png

/gkimage/9k/fa/0d/9kfa0d.png
光电传感器由发射二极管和接收管组成,A、K是红外发射二极管的正负极,C、E是接收管的正负极。        只要A极接高电平、K极接低电平,红外发射管就能发出红外线。可以在传感器加上外围电路来检测接收管的信号,进而确定是否接受到反射回来的红外线,如上图图右下方的器件工作示意图。

/gkimage/0c/fi/ri/0cfiri.png

/gkimage/0c/fi/ri/0cfiri.png
所谓电压比较的原理就是给任一输入端一个参考电压(通过转动电位器来改变参考电压的值),我的原理图中给IN-输入参考电压,当IN+的电压高于IN-时,OUT为低电平,反之亦然,IN+仅需与IN-相差mV就能在OUT端得到比较结果。

/gkimage/af/zz/dq/afzzdq.png

/gkimage/af/zz/dq/afzzdq.png
在做Arduino扩展板的时候一定要对各端口的使用有个大致的规划,其实我觉得Arduino核心板的设计是不太理想的。        大家都知道,万能板相邻两孔的间距是标准的100mil也就是2.54mm,图中b= 5.08mm,图中2.54<a<5.08,这就很尴尬,导致我之前焊的万能板如果要同时用0-7和8-13口的时候,板子需要很费劲的插上去,并且插上去万能板就弯曲了。        所以我为了避免那样的情况再次发生,我板子里的端口只用了0-7和A0-A5(A口也可以做数字输入输出,端口为14-19),还有VIN-RESET。

/gkimage/9g/bl/ut/9gblut.png

/gkimage/9g/bl/ut/9gblut.png
电压比较器原理图注:扩展板上加一个复位开关是非常方便调试的。
) Z  k  h& A8 Y5 t: G

/gkimage/1y/p9/a9/1yp9a9.png

/gkimage/1y/p9/a9/1yp9a9.png
原理图和PCB文件从这里打包下载8 Y1 r3 p$ l8 p) P1 G' p! `

/gkimage/97/w8/z6/97w8z6.png

/gkimage/97/w8/z6/97w8z6.png
用万能板焊好的电路,这个电路焊完非常有成就感,对于万能板来说应该密度还挺高的。        考虑到给舵机供电的原因,我决定给每个舵机独立用7805供电,还好L7805CV的电流最大有1A,完全能满足舵机的需求,这个板我称作基础动力电源扩展板,预留了超声波接口和一个多余的舵机口,所以这个板用来实现超声波壁障也是没问题的。

/gkimage/pf/o3/9z/pfo39z.png

/gkimage/pf/o3/9z/pfo39z.png

/gkimage/sx/58/1x/sx581x.png

/gkimage/sx/58/1x/sx581x.png

/gkimage/v0/gr/gd/v0grgd.png

/gkimage/v0/gr/gd/v0grgd.png
都焊过前面那个板子了,焊这个板子当然是小菜一碟了。

/gkimage/ua/6i/n8/ua6in8.png

/gkimage/ua/6i/n8/ua6in8.png
插上调试,我的两个用万能板焊的板子没有任何问题,在佩服自己的同时也再次自信一下吧!9 c4 ^9 o4 `6 y; l  D3 ]3 g

/gkimage/mh/on/4m/mhon4m.png

/gkimage/mh/on/4m/mhon4m.png
将电路装到小车上,开始调试……8 ]$ {9 S2 j/ c* p7 O& v
4   程序部分(时间仓促,未精调,只是实现功能)供大家参考:
) s7 ~$ e: F$ c+ b7 V, t2 ]先定义各接口
  1. 3 @/ m; Y* l  p/ N" @& e6 h+ |
  2. int lled = 7;4 ^% L* a4 G7 P% L5 l& s
  3. int rled = 4;
    7 ?5 r) Q2 o1 g. q. j
  4. int lmotor = 19;% Z8 D5 @0 i7 e$ j) D
  5. int rmotor = 18;
    3 n: M9 c* u+ |* o  t- l$ }+ l
  6. int rdate = 0;
    + f3 t8 V8 z9 j7 m' A" B! z- x; z
  7. int ldate = 0;0 t6 \$ t  p& r: ?5 o/ [
  8. int ledpin = 14;+ V: z; t" v- W8 C1 U
  9. int l = 0;7 P) C: G: m9 P" L9 m
  10. int r = 0;
    7 l6 C* g5 X, h2 h
  11. int a = 0;
    ( y. f* [  e9 K2 l$ K/ x5 X
  12. int b = 0;
    ; z" d+ E$ |/ E
  13. int c = 0;1 q2 _) _$ |# c* e; R' j9 E4 v
  14. int e = 0;
      |- r5 c$ N+ S1 I
  15. void setup()
    - p) ?7 W* e# D5 c5 O4 T
  16. {
    0 v' ?- ?" i, S% P3 a6 w4 S
  17. pinMode(lled,INPUT);
    1 r; u( S* g- j; ?
  18. pinMode(rled,INPUT);
    4 r' f% X/ l0 s, ~, e0 C' s) n
  19. pinMode(lmotor,OUTPUT);
    * M; N% D9 P. R: c) T
  20. pinMode(rmotor,OUTPUT);# V. P) }, D3 R: E& z" N$ N2 G
  21. pinMode(ledpin,OUTPUT);
    6 U5 a! j  y6 p, j7 G
  22. }
    3 |% E9 h$ d8 }
  23. void run()& \- V$ Y' D2 M2 w
  24. {  J9 A, {1 r/ u6 x# N9 u
  25.    for(int i = 0;i ) `* X7 k9 y, v4 h
复制代码
上图若干:
' X: F7 u( [4 L$ h6 G1 V- D8 O' c

/gkimage/wl/6l/og/wl6log.png

/gkimage/wl/6l/og/wl6log.png

/gkimage/og/ox/pj/ogoxpj.png

/gkimage/og/ox/pj/ogoxpj.png

/gkimage/s3/rh/8h/s3rh8h.png

/gkimage/s3/rh/8h/s3rh8h.png
这个小车不算完,因为有太多的功能可供大家玩,比如我就装上了超声波和红外传感器,是不是挺萌的!        与其叫这个东西小车,不如说它是每个机器人爱好者入门的神车吧!本文所有文件打包下载南通0
匿名
发表于 2015-10-8 18:02 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 18:20 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 18:42 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 19:07 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 19:31 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 20:01 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 20:28 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2015-10-8 20:56 | 显示全部楼层 来自:江苏
这个真好玩~~ 来设计一个更崎岖的路线吧~~
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 21:23 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

匿名
发表于 2015-10-8 21:44 | 显示全部楼层 来自:江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-1-28 17:34
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2015-10-8 22:12 | 显示全部楼层 来自:江苏
    为了Arduino顶啊顶翻了~~~
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-8 22:34 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-8 22:56 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-8 23:11 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-8 23:36 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-8 23:58 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 00:26 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 00:47 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 01:10 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 01:28 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 01:43 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 02:08 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    匿名
    发表于 2015-10-9 02:36 | 显示全部楼层 来自:江苏
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    手机版|无图版|站务联系 | 商务合作 | 平台公约

    信息产业部备案:苏ICP备05014191号-1 经营性ICP许可证:苏B2-20110445 苏公网安备 32060202000307号 © 2001-2019 0513.org All Right Reserved.

    投诉争议 技术支持:第一互联 GMT+8, 2025-12-17 06:56 , Processed in 1.837830 second(s), 15 queries , MemCache On. 站点统计

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