WEEEMAKE官方论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3378|回复: 0

【编程秘籍】三轮机器人 之 “光控速度”

[复制链接]

6

主题

6

帖子

40

积分

超级版主

Rank: 8Rank: 8

积分
40
发表于 2018-11-12 15:53:14 | 显示全部楼层 |阅读模式
1.JPG
  “快用六合一探索者机器人套件,搭建一个属于你的三轮机器人吧!”
2.png

       三轮机器人被我们称为探索者家族里最灵巧的“刺客”,由于它的结构相对比较简单,万向轮作为前轮,让机器人的转向与运动更加灵活,能实现360度无阻碍运转; 后轮的两个车轮分别由25直流电机驱动,所以速度的传递更直接,相比探索者家族里的其他五位机器人,速度更快。如果你在操控它时,将速度提升到一定的极限,又立马刹车,它就能为你表演一次“站立奔跑”。
       三轮机器人上的传感器比较少,除了主控板上的声控、光控、按键等传感器外,外接的传感器仅有一个超声波传感器,加上两侧的驱动电机,让机器人的功能展示上更轻便。三轮机器人的出厂程序仅仅是能实现自动避障。
       这里我们为它设计了一个新的拓展任务,让机器人能实现新的功能。
       编程任务:让三轮机器人的速度根据环境中光线值的变化而呈现正比例变化,并且超声波内置的RGB LED 灯珠的颜色会随之改变。
       电子模块: 板载光线传感器——感知环境光线的值; 超声波传感器内置RGB灯珠——用灯光的变化来体现机器人速度的变化; 电机——控制机器人的速度变化。
第一步: 根据任务提示,梳理流程图。
3.png
第二步:用WeeeCode图形化编程软件编程。
1.    设置环境光线值的变量。
    (知识点:简单的理解变量,就是程序中给某一特定的变化量取一个名字,比如环境光线的光照值;周围声音的分贝值;电路中的电阻值等等。当变化值发生改变时,自动赋值给这个变量。在程序中新建变量是为了更方便的调用这个变化量。)
4.png
2.    将变量光线值赋值给光线传感器实时检测到的光照值。
5.png
        在主控板上的光线传感器每次检测一次环境中光照值的时间与你程序的复杂程度有关,程序从上到下执行一次,传感器就工作一次,传输一次光照值给主控器芯片,从而就影响后面程序的运行。
3.    将光线值转换为电机的转速。
      以WeeeCode软件的初设值,以及光线传感器和电机的出厂状态来说:光线传感器能所检测到的环境中的光照值与实际的物理科学中的光照值是不一样的,这里我们用到的是光线强度的相对参考值,这个参考值的区间是0-1023,。也就是说传感器能检测到的最大光线强度的相对参考值是1023。 25直流电机受到内部机械结构与所受最大电压大小等多方面因素影响,其转速的区间值为255.
       因此这里需要做一次数学上的数值转化,计算出每单位的光照参考值下电机的转速值,这样才能保证电机的转速随着光照值的变化而同比例的变化。
6.png
4.    如果光线值高于一定的临界值,我们设计让机器人前进。
      这里将临界值设为500.
7.png
       当光线值超过500时,机器人会前进,而且速度随着光线值的变化而变化。此外,超声波传感器内置RGB灯亮绿色。
       这里注意:机器人两侧的电机在安装时,是相对安装的,所以在设置速度值时,需要考虑到电机的转动方向。前进时转动方向应该是相反的。
5.    如果光线值低于一定的临界值,我们设计让机器人停止运动。
8.png
6.    最后,为了让机器人的速度变化与灯光效果更明显,可以加上一个短暂的延时。
9.png


第三步:烧录程序;
1.    将三轮机器人通过USB数据线连接到电脑端;
2.    选择连接端口;
3.    点击主程序模块,“上传到arduino”。等待上传完成。
无标题.png



回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|WEEEMAKE官方论坛 ( 粤ICP备18115640号 )

GMT+8, 2024-11-21 20:56 , Processed in 0.023315 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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