- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Arduino的视觉四足步行机器人的研究.doc
基于Arduino的视觉四足步行机器人的研究
摘 要:使用Arduino板控制舵机旋转角度进而控制机器人的行走是四足步行机器人研究的一个重要方法。文章通过重点研究Arduino的编程程序实现Arduino板、舵机和视觉模块的联动,从而控制视觉机器人的工作。
关键词:Arduino;视觉步行机器人;舵机;Pixy
引言
Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。它具有跨平台性、简单清晰、开放性等优点,且近年来发展迅速,成为全球最流行的开源硬件,因此将其作为视觉步行机器人的控制模块具有很高的可操作性。
1 Arduino的软件--Arduino IDE
Arduino IDE是Arduino的编程软件,基于processing IDE开发,具有很高的灵活性,且Arduino语言基于wiring语言开发,是对 AVRGCC库的二次封装,它可以在Windows、Macintosh OS X、Linux三大主流操作系统上运行,而其他的大多数控制器只能在Windows上开发,对于编程者来说极其便利。
2 Arduino控制舵机角度
舵机是一种位置伺服的驱动器,其工作原理是由接收机或者单片机发出信号给舵机,其内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。一般舵机旋转的角度范围是0°到180°度。
正是由于舵机转动的角度是通过调节PMW(脉冲宽度调制)信号的占空比来实现的,所以可以通过硬件上将Arduino板与舵机接线,软件上向Arduino嵌入控制程序来控制舵机旋转角度。
下面是一个简单的Arduino舵机角度控制程序:
#include
Servo myservo;
int pos = 0;
void setup()
{
myservo.attach(9);
}
void loop()
{
for(pos = 0; pos 180; pos += 1)
{
myservo.write(pos);
delay(15);
}
}
此程序可以实现舵机0到180度的转动,且每个角度之间相隔15ms。
通过Arduino控制舵机转动的控制程序简单,且角度转动的精确度较高,对于小型四足步行机器人的行走要求很符合。
3 Arduino控制视觉模块
视觉模块我们使用Pixy CMUcam5 图像识别传感器。Pixy是一个开源的图像识别传感器,支持多物体,多色彩的颜色识别,最高支持识别7种颜色。你可以告诉它你想要的颜色,它就会去寻找所需颜色。Pixy支持多种通信方式,如SPI,I2C等,可以直插在Arduino控制板上面。它搭载的图像传感器配合强大的硬件,可以配合PC跟踪、分析多色的数据。
之所以选择Pixy这种视觉模块,不仅因为它与Arduino控制板联接简单,功能强大,还因为它非常符合四足步行机器人的要求。它采用以颜色为中心的办法――使该产品只是将特定颜色的物体的视觉数据发送给相互配合的微型控制器,而不是输出所有视觉数据以进行图像处理。所以Arduino板很容易跟它交流,并腾出许多CPU来执行其他事件。这一点对我们的四足机器人至关重要,因为对于四足机器人来说,其步态、行走方式等影响极大。
硬件上Arduino与Pixy的联接非常简单,Pixy可以直接与Arduino进行通讯。它会以1Mbits/s的速度发送块信息给Arduino,这意味着Pixy每秒可以发送超过6000个识别的物体或每帧135个被识别的物体(Pixy每秒可以处理50帧画面)。想让Pixy与Arduino进行通讯,只需使用Pixy自带的数据线连接Pixy到Arduino。软件上我们通过向Arduino嵌入控制程序来实现与Pixy的联接。
4 Arduino与视觉模块、舵机的联接
硬件上分别将舵机、Pixy与Arduino进行联接,注意信号线、电源线与接地线的正确连接,这对整个系统的安全至关重要。
软件上通过一个嵌套的控制程序实现三者的互相联系。首先Pixy会对被识别物体的大小、形状进行分析,且对初始位置时物体的中心点编为坐标原点,当被识别物体开始运动时,Pixy会将物体大小和方位的变化信息传递给Arduino,Arduino再控制舵机旋转相应角度,从而实现机器人前后左右的行走。
下面是判断物体大小方位变化的程序:
if(pixy.blocks[0].x100)
{
if(pixy.bloc
您可能关注的文档
最近下载
- 电力电子技术阮新波习题答案.pdf VIP
- 2022年小学低段数学新课标解读心得体会(通用12篇).pdf VIP
- 2025贵州黔南州瓮安县招聘社区工作者50人考试参考试题附答案解析.docx VIP
- 统编版(2024新版)七年级上册道德与法治期末复习课件.pdf
- (完整版)动词单数第三人称练习题.pdf VIP
- 学术规范与论文写作(雨课堂)期末考试答案.docx VIP
- 《GBT27543-2011-手推升降平台搬运车》.pdf
- 办公室消防安全知识培训教育.pptx VIP
- 剪映短视频策划、拍摄、剪辑实战教程:短视频策划PPT教学课件.pptx VIP
- 河湖生态护岸工程技术导则.pdf VIP
原创力文档


文档评论(0)