扫地机的数据控制系统设计说明书.docx
《扫地机的数据控制系统设计说明书.docx》由会员分享,可在线阅读,更多相关《扫地机的数据控制系统设计说明书.docx(47页珍藏版)》请在冰豆网上搜索。
![扫地机的数据控制系统设计说明书.docx](https://file1.bdocx.com/fileroot1/2023-2/4/57377d53-695e-4d6e-9218-6bd380e49ead/57377d53-695e-4d6e-9218-6bd380e49ead1.gif)
扫地机的数据控制系统设计说明书
本科毕业设计说明书
扫地机的数据控制系统设计
THEDESIGNOFAUTOMATICSWEEPINGMACHINEDATACONTROLSYSTEM矚慫润厲钐瘗睞枥庑赖。
扫地机的数据控制系统设计
摘要
自动扫地机属于服务机器人的一种,随着社会的发展需要,服务机器人已经渗透了我们的生活、工作和经济方面,并且起到了很大的作用。
世界各国尤其是西方发达国家都在致力于研究开发和广泛使用自动扫地机。
尽管目前国内外在这方面的研究开发方面已经取得一定的成果,但是仍有许多关键技术问题需要解决或提高,如路径规划就是其中的一个比较重要的技术。
本文介绍一种基于MC9S12DG128单片机的自动扫地机数据控制系统。
该系统实时性高功能完备,包括信息采集模块、控制模块、清扫模块、运动模块。
由碰撞传感器、红外测距传感器等来探测周围的环境,由红外接收头实现无线手动遥控功能,由直流电机带动两个驱动轮旋转,采用改进的“井”字形路径遍历法。
经过实验证明了设计的可靠性,实现了自动扫地机的自动清洁行走。
聞創沟燴鐺險爱氇谴净。
关键词:
自动扫地机,单片机,红外遥控,自动行走
THEDESIGNOFAUTOMATICSWEEPINGMACHINEDATACONTROLSYSTEM残骛楼諍锩瀨濟溆塹籟。
ABSTRACT
Automaticsweepingmachineisonepartoftheservingrobot.Withthedevelopmentofsociety,theservingrobothasinfiltratedourlives,workandtheeconomy,andhasplayedasignificantrole.Automaticsweepingisbeingresearchedanddevelopedinthecountriesallovertheworld,andwhichisbeingusedwidelyinthewestdevelopedcountries.Despitethecurrentareasofresearchanddevelopmentathomeandabroadinthisaspecthasmadecertainachievements,therearestillmanykeytechnicalproblemsneedtobesolvedorimproved.Forexample,pathplanningisoneoftheimportanttechnical.ThispaperpresentsthesystemintegrationandoverviewofautonomouscleaningrobotwhichisbasedonMC9S12DG128singlechip.Therealtimecharacteristicandfunctionofthesystemareingoodcondition.Thesystemconsistsfoursegments:
informationcollectionmodule,thedecisionmodule,cleaningmodule,motioncontrolmodule.Severalsensorssuchascollisionsensor,infrareddistancesensorsdetectthesurroundingobstacleswhilecleaning.Therealizationofwirelessremotemanualcontrolfunctioniscomposedofaninfraredreceivinghead.TwodrivenwheelsaredrivenbytwoDCmotorscombining.Itadoptstheimproved"井"-shapedpathtraversalmethod.Experimentsshowthatthecontrolsystemrunwellandtherobothavetheabilitytocleanthefloorautomatically.酽锕极額閉镇桧猪訣锥。
KEYWARDS:
automaticsweepingmachine,singlechip,infraredremotecontrol,automaticmove彈贸摄尔霁毙攬砖卤庑。
1绪论
1.1概述
自动扫地机小巧轻便,操作简单,有很好的实用性,它自带电源,对工作环境适应性好。
它的任务是清洁房间地面,主要处理地面的灰尘,对大尺寸的物体不进行处理,它对家具和人都是安全的,且具备一定得自我保护能力。
詩叁撻訥烬忧毀厉鋨骜。
自动扫地机系统的基本结构一般包括四部分:
信息采集模块、控制模块、清扫模块、运动模块。
随着计算机技术、人工智能技术、传感器技术、移动机器人技术的飞速发展,为自动扫地机的控制模块的研究和开发打下坚实的理论与技术基础以及美好的未来发展蓝图;信息采集模块依赖于传感器技术,一般常用的传感器有:
CCD摄像机、红外测距传感器、重力传感器、碰撞传感器等,采集外部的环境信息;运动模块是自动扫地机的本体,一般的结构有:
轮式、履带式、步进式或其他方式,轮式和履带式适合移动在平整的地面上,步进式适合与条件较差的路面移动;清扫模块一般有:
边刷、地刷和吸尘器,边刷和地刷用于强力清扫地板上的吸附物,吸尘器吸取地板上较小的物体。
近年来快速发展、深刻影响着自动扫地机进步的关键技术有:
路径规划技术、传感器技术、吸尘技术、控制技术、电源技术等。
则鯤愜韋瘓賈晖园栋泷。
1.2选题依据和意义
在人类不断发展的文明中,科技扮演的角色越来越重要。
尤其在当今世界,科学技术使人类的生活和思维方式不断变革,科技产品已深入到人类生活的个个角落。
在控制、感知、驱动、材料等领域不断进步的技术背景下,机器人首次出现在制造领域之外的服务领域,开辟了应用机器人的新领域。
服务机器人的出现有着深刻的社会因素,主要有三大原因:
(1)、劳动力成本上升;
(2)、人类想摆脱枯燥乏味的体力劳动,像清洁、家务、照顾病人等;(3)、人口的老龄化和社会福利制度的日益完善。
服务机器人有着比较明显的特征:
适合具体的方式、环境以及任务过程的一个机器人系统,活动范围广,非结构环境下移动性,所以大多数机器人是移动机器人。
胀鏝彈奥秘孫戶孪钇賻。
自动扫地机是一种能够自动执行房间清扫的家用服务机器人,集中了机械学、电子技术、传感器技术、计算机技术、控制技术、机器人技术、人工智能技术等多学科。
开始于20世纪80年代的研究,现在已经有多重样机和产品,并且促进了家庭服务机器人行业的发展,也促进了移动机器人技术、图像、语音识别、传感器等技术的发展。
许多发达国家都将其视为机器人研究的新领域给予重视。
有关资料也预测自动扫地机是未来几年需求量最大的服务机器人,特别是日用清洁电器不论在市场上或者是在产品创新上,绝对是所有小家电产品中最活跃的,未来仍有很大的成长空间。
鳃躋峽祷紉诵帮废掃減。
1.3国内外自动扫地机的发展现状
哈尔滨工业大学在此领域的探索工作开始于90年代,前后负责国家863高科技计划资助项目-高楼壁面清洁爬壁机器人的研究任务,完美的做完了样机的研制工作。
哈尔滨工业大学和香港中文大学联合,开发一种全方位移动自动扫地机,安装的万向轮可任意方向移动,开放式控制结构,软件可移植,硬件可拓展,时时避障功能,增强的自动扫地机的环境适应能力。
稟虛嬪赈维哜妝扩踴粜。
1999年,浙江大学的机械电子研究所开始只能吸尘机器人的研发工作。
我国首台低级智能自动扫地机两年以后成功问世。
此类机器人执行清扫,第一学习环境,也即是依靠超声波传感器检测障碍物的距离,而且离墙壁有固定的一段距离,依据这些角落的清扫信息,计算房间的面积,根据这些信息计算清洁工作的时间,随后,基于局部遍历规划与随机规划汇合的方法进行计算最佳的移动清洁路线,打扫工作完成后,也会进行自主充电。
陽簍埡鲑罷規呜旧岿錟。
“三叶虫”吸尘机器人是瑞典家电公司伊莱克斯经历12年,向市场推出的世界首台智能吸尘机器人。
它被开启后,首先会依着墙角进行清扫工作,与此同时对清扫的房间进行扫描获取房间信息。
机器人工作时,主要应用的是随机规划模式,也就是工作中会使用超声波传感器探测行进方向前方的障碍物,当探测到有障碍物时会自动选择躲避障碍物,然会自主选择新的清扫路径。
工作过程中电量不足时,它会停止工作移动到充电器进行自动充电,充电完毕后,会返回到原来中断的清扫地点继续清扫工作。
为了避免机器人跑到危险的区域,一般用磁条来限制机器人的移动空间,保护机器人上的安全。
沩氣嘮戇苌鑿鑿槠谔應。
“Roomba”是美国iRobot公司研发的家庭自动扫地机。
“Roomba”可以运行三种模式:
S模式,清扫大约3~4平方米,工作20分钟;M模式,清扫大约6~7平方米,工作30分钟;L模式,清扫大约8平方米以上,工作40分钟。
在设置清扫模式之后,“Roomba”会执行螺旋清扫路线,通过碰撞探测障碍物。
当碰撞障碍物后,会顺着障碍物前行,移动一定距离后,会自动转动90度,并不断重复上面的过程。
这样循环的进行,一直到清洁完成,然后停止工作。
通过“虚拟墙”设置一个对机器人有阻隔作用的墙壁,控制机器人的活动空间。
“Roomba”的环境适应性比较强,能够在家具的缝隙间自由移动,动作灵巧快捷。
“Roomba”的最大特点是吸尘构造,不但有真空吸口,还有底部的旋转滚刷以及侧部的旋转毛刷,这些都强化了清洁去污能力,补偿了洗尘功率的不足。
另外,还能够检测污垢情况,进行多次的清扫工作。
钡嵐縣緱虜荣产涛團蔺。
2003年5月日本的日立公司亮相的智能真空机器人,其身长直径25cm,身高13cm,总重4kg,是世界上当时最小的吸尘机器人。
移动最快速度是40cm/s,清扫面积是10平方米,大约耗时10分钟,障碍物假定是3个,通过遥控器或机身进行操作。
吸尘机器人装有CCD相机,可以经过手机连接家用电脑查看房间清洁情况。
清扫工作结束后,自动回到“充电/垃圾回收站”,补充能量并处理垃圾。
在机身下部,装有移动伸缩的自由洗尘口,可深处5cm左右,当移动到一些角落或者狭窄区域时,可最大化清洁地面,不留任何死角。
懨俠劑鈍触乐鹇烬觶騮。
韩国Samsung公布的一种交新型吸尘机器人使用交新型3D地图影射技术定位自身位置,操作者能够连接任意电脑互联网计算机操作自己的自动扫地机。
机器人顶部安装有摄像装置用于时时检查家庭清洁状态。
VC-RP30W配置有自动充电设备,机器人清扫过程中电压不足时会自我检测到,及时的进行充电,结束充电后,会继续进行前面的清扫工作。
整个清扫工作结束后,该机器人会释放负离子,净化空气,充当空气清新机的功能。
謾饱兗争詣繚鮐癞别瀘。
2MC9S12DG128单片机简介
2.1前言
本系统采用FreescaleHCS12系列的MC9S12DG128单片机作为核心控制芯片。
MC9S12DG128是一个以16位中央处理器为核心的16位单片机,128K的字节的FlashEEPROM存储器,8K字节的RAM,2K字节的EEPROM,两个异步串行通信接口(SCI),两个串行外围接口(SPI),两个8通道模拟数字转换器(ADC),1个8通道脉宽调制模块,两个兼容CAN2.0A/B协议的控制器,1个Byteflight模块和内部集成电路总线。
呙铉們欤谦鸪饺竞荡赚。
2.2引脚说明
MC9S12DG128单片机有80引脚和112引脚两种封装形式,本系统采用112引脚,其引脚图如图2-1。
莹谐龌蕲賞组靄绉嚴减。
EXTAL,XTAL:
振荡器引脚,晶振电路或外部时钟引脚。
EXTAL、XTAL分别是振荡器的输入和输出引脚。
麸肃鹏镟轿騍镣缚縟糶。
RESET:
外部复位引脚,高电平有效,为双向控制信号。
当输入高电平有效时,将单片机初始化成默认状态;单片机内部功能引起复位时,可作为输出信号。
納畴鳗吶鄖禎銣腻鰲锬。
TEST:
测试引脚,仅有输入功能,专为测试预留。
测试引脚在所有应用中必须和VSS连一起用。
PA[7-0]/ADDR[15-8]/DATA[15-8]:
通用输入引脚;在单片机扩展操作模式中,这些引脚可作为数据总线。
風撵鲔貓铁频钙蓟纠庙。
PB[7-0]/ADDR[7-0]/DATA[7-0]:
通用输入引脚;在单片机扩展操作模式中,这些引脚可作为数据总线。
灭嗳骇諗鋅猎輛觏馊藹。
PH[7-4]/KWH[7-4]:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式。
铹鸝饷飾镡閌赀诨癱骝。
PH3/KWH3/:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式;同时也可以配置为SPI1的从选择端。
攙閿频嵘陣澇諗谴隴泸。
PH2/KWH2/SCK1:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式;同时也可以配置为SPI1的时钟引脚SCK。
趕輾雏纨颗锊讨跃满賺。
PH1/KWH1/MOSI1:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式;同时也可以配置为SPI1的主模式的输出(MO)引脚,或者从模式的输入(SI)引脚,即配置为MOSI。
夹覡闾辁駁档驀迁锬減。
PH0/KWH0/MISO1:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式;同时也可以配置为SPI1的主模式的输入(MI)引脚,或者从模式的输出(SO)引脚,即配置为MISO。
视絀镘鸸鲚鐘脑钧欖粝。
PJ7/KWJ7/TXCAN4/SCL/TXCAN0:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式;同时也可以配置为CAN0或CAN4的数据接收引脚;还可以配置为C模块的串行时钟引脚SCL。
偽澀锟攢鴛擋緬铹鈞錠。
PJ6/KWJ6/RXCAN4/SDA/RXCAN0:
通用输入或输出引脚;可以配置为中断输入信号,该中断使单片机退出停止或等待模式;同时也可以配置为CAN0或CAN4的数据接收引脚;还可以配置为C模块的串行数据引脚SDA。
緦徑铫膾龋轿级镗挢廟。
PK[5-0]/XADDR[19-14]:
通用输入或输出引脚;在单片机扩展操作模式中,当配置单片机扩展操作模式时,这些引脚作为外部总线提供扩展地址XADDR[19-14]。
騅憑钶銘侥张礫阵轸蔼。
PM7/BF_PSLM/TXCAN4:
通用输入或输出引脚;可以配置为Byteflight模块的BF_PSLM信号,也可以配置为CAN4的数据发送引脚。
疠骐錾农剎貯狱颢幗騮。
PM6/BF_PERR/RXCAN4:
通用输入或输出引脚;可以配置为Byteflight模块的BF_PERR信号,表示通信中信息格式错误或者非法脉冲信号;也可以配置为CAN4的数据接收引脚。
镞锊过润启婭澗骆讕瀘。
PM5/BF_PROK/TXCAN0/TXCAN4/SCK0:
通用输入或输出引脚;可以配置为Byteflight模块的BF_PROK信号,接收数据正确,该引脚输出脉冲信号;也可以配置为CAN4或CAN0的数据发送引脚;还可以配置为SPI0的串行时钟信号SCK0。
榿贰轲誊壟该槛鲻垲赛。
PM4/BF_PSYN/RXCAN0/RXCAN4/MOSI0:
通用输入或输出引脚;可以配置为Byteflight模块的BF_PSYN信号,也可以配置为CAN4或CAN0的数据接收引脚;还可以配置为SPI0的主模式的输出引脚,或者从模式的输入引脚,即配置为MOSI。
邁茑赚陉宾呗擷鹪讼凑。
PM3/TX_BF/TXCAN1/TXCAN0/:
通用输入或输出引脚;可以配置为Byteflight模块的TX_BF信号,即数据发送引脚;也可以配置为CAN1或CAN0的数据发送引脚;还可以配置为SPI0的从模式选择引脚。
嵝硖贪塒廩袞悯倉華糲。
PM2/RX_BF/RXCAN1/RXCAN0/MISO0:
通用输入或输出引脚;可以配置为Byteflight模块的RX_BF信号,即数据接收引脚;也可以配置为CAN1或CAN0的数据接收引脚;还可以配置为SPI0的主模式的输入引脚,或者从模式的输出引脚,即配置为MISO。
该栎谖碼戆沖巋鳧薩锭。
PM1/TXCAN0/TXB:
通用输入或输出引脚;也可以作为CAN0的发送引脚;也可以作为BDLC的传输引脚TXB。
劇妆诨貰攖苹埘呂仑庙。
PM0/RXCAN0/RXB:
通用输入或输出引脚;也可以作为CAN0的接收引脚;也可以作为BDLC的接收引脚RXB。
臠龍讹驄桠业變墊罗蘄。
PP[7-4]/KWP[7-4]/PWM[7-4]:
通用输入或输出引脚;可用于产生一个使单片机退出停止或等待模式的中断;也可以作为PWM的7~4通道的输出。
鰻順褛悦漚縫冁屜鸭骞。
PP3/KWP3/PWM3/SS1:
通用输入或输出引脚;可用于产生一个使单片机退出停止或等待模式的中断;也可以作为PWM的3通道的输出。
同时也可以配置为SPI1的从选择端。
穑釓虚绺滟鳗絲懷紓泺。
PP2/KWP2/PWM2/SCK1:
通用输入或输出引脚;可用于产生一个使单片机退出停止或等待模式的中断;也可以作为PWM的2通道的输出。
同时也可以配置为SPI1的时钟引脚SCK1。
隶誆荧鉴獫纲鴣攣駘賽。
PP1/KWP1/PWM1/MOSI1:
通用输入或输出引脚;可用于产生一个使单片机退出停止或等待模式的中断;也可以作为PWM的1通道的输出;还可以配置为SPI1的主模式的输出(MO)引脚,或者从模式的输入(SI)引脚,即配置为MOSI。
浹繢腻叢着駕骠構砀湊。
PP0/KWP0/PWM0/MISO1:
通用输入或输出引脚;可用于产生一个使单片机退出停止或等待模式的中断;也可以作为PWM的0通道的输出;还可以配置为SPI1的主模式的输入(SI)引脚,或者从模式的输出(MO)引脚,即配置为MISO。
鈀燭罚櫝箋礱颼畢韫粝。
PS7/:
通用输入或输出引脚;可以配置为SPI0的从选择端。
PS6/SCK0:
通用输入或输出引脚;以配置为SPI0的时钟引脚SCK。
PS5/MOSI0:
通用输入或输出引脚;可以配置为SPI0的主模式的输出(MO)引脚,或者从模式的输入(SI)引脚,即配置为MOSI。
惬執缉蘿绅颀阳灣熗鍵。
PS4/MISO0:
通用输入或输出引脚;可以配置为SPI0的主模式的输入(SI)引脚,或者从模式的输出(MO)引脚,即配置为MOSI。
贞廈给鏌綞牵鎮獵鎦龐。
PS3/TXD1:
通用输入或输出引脚;可作为串行通信接口1的发送引脚。
PS2/RXD1:
通用输入或输出引脚;可作为串行通信接口1的接收引脚。
PS1/TXD0:
通用输入或输出引脚;可作为串行通信接口0的发送引脚。
PS0/RXD0:
通用输入或输出引脚;可作为串行通信接口0的接收引脚。
2.3操作模式
MC9S12DG128有八种操作模式。
在复位信号的上升沿,MODC,MODB,和MODA引脚上的数据锁进MODE寄存器的相应位,用来决定操作模式,如表2-1所列。
MODE寄存器的MODC,MODB,和MODA位在运行期间指示当前操作模式。
在复位信号的上升沿,ROMCTL引脚数据锁存,送入MISC寄存器中的ROMON位,ROMON位决定内部Flash在内存映像中是否可见。
ROMON=1说明Flash在内存映像中可见。
嚌鲭级厨胀鑲铟礦毁蕲。
表2-1操作模式选择
BKGD=MODC
PE6=
MODB
PE5=
MODA
PK7=
ROMCTL
ROMONBIT
模式简介
0
0
0
-
1
特殊单片模式,BDM有效
0
0
1
0
1
仿真扩展窄模式,BDM有效
1
0
0
1
0
-
0
特殊测试模式,BDM有效
0
1
1
0
1
仿真扩展宽模式,BDM有效
1
0
1
0
0
-
1
普通单片模式,BDM有效
1
0
1
0
0
普通扩展窄模式,BDM有效
1
1
1
1
0
-
1
特殊设备模式,BDM有效;但是如果进行总线操作,讲引起总线冲突,所以一定不能使用总线
1
1
1
0
0
普通扩展宽模式
1
1
2.4本系统中的MC9S12DG128单片机
MC9S12DG128有8路PWM输出,本系统利用PWM输出来控制两轮转速,实现差速控制;丰富的数字I/O口可以接碰撞传感器、红外避障传感器等,可编程的上升沿或下降沿触发可用来检测楼梯,另外它的定时器功能可以精确进行定时中断,为自动扫地机提供精确周期来完成采集信号、决策、行走等。
薊镔竖牍熒浹醬籬铃騫。
本系统涉及的MC9S12DG128MPV的I/O口包括PA,PB,PK,PM,PS,PH,PWM口,其中PWM口用于电机控制,PA和PB口分别作为摄像头和LCD的数据传输线,PK和PM作为数字I/O口接收数字传感器的返回值,PS口复用了串行通信设备接口的功能,在本设计中用作无线串行接口,PH口复用了中断功能,用作检测楼梯传感器返回值的接口。
齡践砚语蜗铸转絹攤濼。
3系统总体设计
3.1自动扫地机系统组成
自动扫地机需要完成的任务是能够在房间中自动清洁地面。
工作时,利用各种传感器测得环境信息,并做出决策,实现边行走边打扫,完成预定的任务。
典型的自动扫地机主要由以下几个模块组成:
绅薮疮颧訝标販繯轅赛。
(1)信息采集模块
(2)控制模块
(3)运动模块
(4)清扫模块
这四个部分构成了完整的自动扫地机系统,如图3-1所示。
信息采集模块返回当前自动扫地机的位置信息,如是否碰到障碍物、是否遇到楼梯等,然后把这些信息送给控制模块进行决策,控制运动模块,使机器人转弯或者后退等,在机器人运动的同时让清扫模块进行清扫,完成打扫地面的任务。
饪箩狞屬诺釙诬苧径凛。
3.1.1信息采集模块
自动扫地机在工作时需要实时检测自身状态信息和收集外界环境信息,以控制自身状态,进行路径规划,同时判断电池电量是否不足并自动充电等。
烴毙潜籬賢擔視蠶贲粵。
根据自动扫地机的工作需要,自动扫地机传感器的选择有以下要求:
质量轻、体积小、安装方便可靠;精度好;稳定性好、可靠性高;抗干扰能力强;经济性好。
鋝岂涛軌跃轮莳講嫗键。
3.1.2控制模块
这个模块是整个系统的核心所在,相当于人的“大脑”。
控制模块接收信息采集模块传送过来的环境信息,进行相应的分析判断,做出最佳的决策,再将做出的运动决策传送给运动模块,保证机器人执行相应的动作。
本设计的控制模块是16位的MC9S12DG128单片机,随着功能和要求的提高,并逐渐向32位处理器发展。
撷伪氢鱧轍幂聹諛詼庞。
3.1.3运动模块
这个模块是机器人运动的核心部分,其性能直接关系到整个机器人的运动能力。
它的功能就是根据控制模块的指令,使机器人的执行机构实现相应的动作,这个模块设计的关键在于控制电机的硬件电路设计和控制方法的设计。
踪飯梦掺钓貞绫賁发蘄。
3.1.4清扫模块
清扫模块的功能是在自动扫地机行走的同时完成清扫的工作,一般只需完成吸尘功能,这时需要设计一个小型吸尘器装在机器人上,也有一些自动扫地机设计成既可吸尘又可擦地,需要擦地时可在机器人底部放上棉布。
婭鑠机职銦夾簣軒蚀骞。
3.2自动扫地机系统总体设计