23581| 18
|
[项目] 做一个超声波雷达 |
本帖最后由 super-power 于 2017-5-22 22:30 编辑 前言:想做一个雷达也就是儿时的一个梦想而已,小时候看见电视和电影中那嗖嗖旋转的雷达,闪闪发光的雷达屏幕,觉得甚是神秘,一直梦想有一天自己也能有一个。时过境迁几十年过去了,开源硬件闯入我的生活,某天突发奇想做个雷达玩一下吧。从工具箱中找主板,超声波传感器,舵机等等器件,马上动手干了起来。 准备的器材: Arduino uno 一块、9克舵机一个、SRF05超声波模块一块,OLED屏一块、杜邦线若干,Mixly编程软件。硬件器材淘宝而来全部加起来不到60元。 设计的思路: 超声波模块负责测距然后利用三角函数,计算出障碍物的x坐标和y坐标。舵机负责超声波探头的左右旋转,为了避免舵机0度和180度左右运动状态的不确定性。限定舵机的运行范围是10~170度。舵机每转1度超声波传感器探测一次距离,计算出一组x,y坐标值。为了提高舵机左右旋转时的工作效率,从左转到右边取值10~170度,每2度测一次(偶数角度),舵机从右回到左边时从169~9度每2度测一次(奇数角度)保存到数组中。左到右再到左一个完整的运动周期采集160组x,y坐标,坐标值全部保存到数组中。一个完整的运动周期后,调用oled的firstpage方法和nextpage方法把160组坐标的值全部显示在oled屏上。 制作过程: 0.96寸Oled单色屏接I2C接口,舵机接数字口9,超声波传感器trig接数字口13,echo接数字口12。(特别提示由于oled屏幕限制测距范围设定了一个限制64cm以内,1个像素表示1cm) 硬件连接完毕编程测试,编程采用mixly图形化编程程序代码如下:(两段代码是连续的,截图不便所以分成了两块。) 现在先放在小车上玩,以后有时间3D打印做个盒子,把它们装进去,做成一个雷达盒子。最后上个图大家看看。左下角是oled,oled中那个考前的小横线就是我拍照时的手机被扫描进去了。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed