除冰机器人的控制仿真设计【2013年最新整理毕业论文】_第1页
除冰机器人的控制仿真设计【2013年最新整理毕业论文】_第2页
除冰机器人的控制仿真设计【2013年最新整理毕业论文】_第3页
除冰机器人的控制仿真设计【2013年最新整理毕业论文】_第4页
除冰机器人的控制仿真设计【2013年最新整理毕业论文】_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

除冰机器人的设计 摘 要 随着科技的发展,机器人技术也越来越普及。在各个领域的发展到一定阶段,机器也开始代替人的工作,对那些具有安全隐患的工作也是机器人应用最多的地方,如今西南地区随着天气的影响对输电线的破坏也越来越加重,本次设计是针对这种情况设计一种专门除冰的一种机器人,通过对内部的控制设计达到对机械的操作,进而达到除冰的效果。在根据运动学仿真,验证了动作规划的合理性。接下来,用 Lagrange 法建立了机器人的多刚体系统动力学模型,推导了机器人逆动力学方程的求解算法,并结合机器人的虚拟样机,并且考虑导线 的柔性,对除冰机器人单臂越障的过程进行了仿真,根据结果,为除冰机器人最薄弱的关节选择了合适和电机,验证了除冰机器人本体结构设计的可行性。最后,研究了柔性导线的悬挂形状,并用 Lagrange 方程建立了机器人的刚柔耦合动力学模型,在ADAMS 中用除冰机器人的虚拟样机模型和导线的柔性模型进行了仿真,得到机器人运动与导线变形间耦合特性。验证了即使在考虑导线柔性的情况下, 因此,研制安全有效的除冰机械以代替人进行导线除冰具有较好的实用意义。 关键词: 除冰机器人 ;运动学;多刚体动力学;刚柔耦合动力学 Abstract With the development of science and technology, robotics is becoming increasingly popular. In various fields of development to a certain stage, machines began to replace the work of a place where most work is also a robot application security risks, and now the southwest with the weather damage to the transmission line more and more aggravated this design is a specialized de-icing for this case to design a robot, and internal control designed to meet the operation of machines, thus achieving the effect of de-icing.kinematics simulation to verify the rationality of the action plan. Next, using the Lagrange method, the robots multi-body dynamics model, the derivation of the algorithm of the robot inverse dynamics equations, combined with the virtual prototype of the robot, and to consider the flexibility of the wire de-icing robot single arm the more impaired the process of simulation, based on the results, the weakest de-icing robot joints to choose the right motor, verify the feasibility of de-icing design of the robot body structure. Finally, flexible wire hanging shape, and the Lagrange equations of the robot rigid-flexible coupling dynamic model, a flexible model of the virtual prototype model of the robot in ADAMS using de-icing and wire were simulated to get the robot motion coupling between the wire deformation features.verified even in the wire flexible, so the development of safe and effective de-icing machines to replace human conductors de-icing has practical significance. Key words: Deicing robot; kinematics; multi-body dynamics; rigid-flexible coupling dynamics 目 录 摘 要 . 1 1 引言 . 1 1.1 除冰机器人的研究 . 1 1.2 研究现状 . 1 1.3 工业机器人的控制系统的分类 . 2 2控制系统的设计 . 3 2.1 工作电源及控制系统 . 3 2.2 传感器的应用 . 4 2.2.1 温度传感器 . 4 2.2.2 光照传感器 . 5 2.3 单片机的选用及硬件设计 . 5 2.4 8255A 芯片与 AT89C51 接口电路设计 . 7 2.5 时钟电路的设计 . 8 2.6 ADC0809 引脚配置及其接口电路设计 . 9 3指令系统编程 . 11 3.1 运动及轴的指令系统 . 11 3.2 输入 /输出指令说明或编程 . 12 3.2.1 程序循环和结构循环 . 12 3.2.2 恒量 . 14 3.3 轴参数说明和编程 . 14 4除冰机器人的运动模块 . 16 4.1 无线传输模块 . 16 4.2 测控系统 . 17 4.3 控制功能模块 . 18 4.4 系统软件的设计 . 20 4.5 系统监控程序设定 . 22 参考文献 . 24 致 谢 . 25 附录 . 26 中国地质大学长城学院 2012 届毕业论文 1 1 引言 1.1 除冰机器人的研究 2008年 1月我国南方数省输电线路遭遇历史上罕见的冰雪灾害。长时间持续的高强度、大范围低温雨雪冰冻天气 , 导致湖南、江西、浙江、安徽、湖北等地的电网发生倒塔、断线、舞动、覆冰闪络等多种灾害。由于温度、湿度和风速与覆冰形成的最佳气象条件吻合 , 南方各省的输电线路大范围严重覆冰。加之冰冻天气持续时间长、强度大 , 导线和铁塔上的覆冰表现为生成 发展 保持 消融 再保持 再发展的循环过程 , 冰厚不 断增加。雪灾造成国家电网公司直接财产损失达 10415 亿元 , 灾后电网恢复重建和改造需要投入资金390 亿元。由此可见 , 如何破除输电线路覆冰成为一个亟待解决的很有实际意义的课题。 为了达到除冰效率高、能耗小、安全性强、成本低、操作简便、适应力强的目的 , 本文从机械除冰的角度出发 , 设计了一种输电线路除冰机器人。特别是电力系统遭受毁灭性重创,冰灾引起了倒塔 ,现场调查了 2008 年湖南冰灾期间 220kV 输电线路的受损情况 ,发现倒塔线路覆冰厚度主要集中在 20 60mm,同时微地形和微气象造成覆冰加重和覆冰的不均匀性 ,档距、塔形等对线路倒塔也存在影响。分析倒杆断线的形式认为覆冰太厚超过设计值、垂直荷载压垮和不平衡张力拉垮是造成线路倒塔。专家解说,高压线高高的钢塔在下雪天时,可以承受 2-3 倍的重量。但如果下雨凇,可能会承受 10-20 倍的电线重量。电线结冰,遇冷收缩,风吹引起震荡,就使电线不胜重荷而断裂。 1.2 研究现状 目前,在国内还没有技术成熟的除冰机器人,但是,在外国这种除冰机器人技术相对比较成熟,其代表作品是加拿大的研究院设计的遥控小车,它主要用于清除电力传输线上的覆冰,但是该机器人质量过大,结构复杂,并且只能清 除俩杆塔之间的覆冰,不具备越障功能,因此不完全的代替人工线上除冰,由于这些国家的地理与气候情况与我国相似,甚至一些国家的情况更加恶劣,为了保证电力系统的可靠性,提高高压输电线除冰的效率,减少损失,维护工人的安全,在借鉴国内外除冰机器人以及巡线机器人的优点,本文设计的是高压线路除冰机器人,这种机器人可以满足直导线上覆冰不是太厚情况下除冰要求。因此,研制安全有效的除冰机械以代替人进行导线除冰具有较好的应用前景和实用意义。 全球气候正经历以变暖为主要特征的变化,气候变暖导致“厄尔尼诺”和“拉尼娜”等极端天气气候事 件的频率与强度明显增加,输电线路所处地质条件复杂,容易遭受冰灾等极端天气的影响,目前国内外对已多次发生的输电线路冰灾事故进行了相关的研究。袭击湖南的持续低温、雨雪、冰冻天气过程来临之前,湖南温度偏高、空气干燥。湖南东、南、西部三面环山,向中部、北部过渡为丘陵和平地,冷空气袭击湖南后,湖南降温迅速,冷暖空气交汇形成的锋面逆温强度大,加上湖南北低南高的地势使逆温层得以加强,地势陡增处南下冷空气因推进受阻而徘徊驻留,随着暖湿气流不断补充,易形成长时间降雨、冰冻,形成持续的雨凇。由于降温迅速,湘西高海拔山区和纬度较 高的湘北地区地表气温除冰机器人的设计 2 低,但降水主要集中在湘南、湘中、湘东,且停留时间较长,导致湘南、湘中、湘东冰冻灾害强于湘北和湘西高海拔山区。湖南电网冰冻灾害是在大尺度天气形势控制下形成的,拉尼娜现象起到推波助浪的作用,冰冻灾害受损范围与程度具有较强的微地形影响特征。长时间的低温 (0 5 )、降水过程为覆冰提供了适宜条件。受冷暖空气共同影响,湖南从 01-11 02-07,共出现 4 次明显的雨雪天气过程,这次持续时间长的冻雨和冰冻天气给湖南电网带来了灾难性的影响。湖南省电力公司 500 kV 线路 33 条有 14 条线路倒塔 182基 ,变形 75 基,导线断线或受损 159 处,地线断线或受损 322 处; 220 kV 有 44条线路倒塔 679 基, 110 kV 有 121 条倒塔 1864 基; 35 kV 高压线路倒杆 6万 4 千多基,发生断线超过 5 万处;低压线路倒杆断杆 33万多基,断线近 37万处,在整个冰冻期间,发生了多次电网解裂和衡阳、郴州等地区大面积停电事故,使湖南电网受了有史以来最严峻的威胁,直接经济损失数 10 亿元。 1.3 工业机器人的控制系统的分类 工业机器人控制系统可以从不同角度分类,如控制运动的方式不同,可为关节控制、笛卡尔空间运动控制和自适应控制;按 轨迹控制方式的不同,可分为点位控制和连续轨迹控制;按速度控制方式的不同,可分为速度控制、加速度控制。 程序控制系统:给每个自由度施加一定规律的控制作用,机器人就可实现要求的空间轨迹。 自适应控制系统:当外界条件变化时,为保证所要求的品质或为了随着经验的积累而自行改善控制品质,其过程是基于操作机的状态和伺服误差的观察,再调整非线性模型的参数,一直到误差消失为止。这种系统的结构和参数能随时间和条件自动改变。 人工智能系统:事先无法编制运动程序,而是要求在运动过程中根据所获得的周围状态信息,实时确定控制作用。当外 界条件变化时,为保证所要求的品质或为了随着经验的积累而自行改善控制品质,其过程是基于操作机的状态和伺服误差的观察,再调整非线性模型的参数,一直到误差消失为止。这种系统的结构和参数能随时间和条件自动改变。因而本系统是一种自适应控制系统。 中国地质大学长城学院 2012 届毕业论文 3 2 控制系统的设计 2.1 工作电源及控制系统 要保证除冰机器人在野外大范围内长时间工作,必须提供持续可靠的电源。机器人一般的功率一般为几百瓦,由于受体积和重量的限制,蓄电池组不能满足长时间供电要求。尝试采用小型汽油发电机为机器人供电,但汽油发电机需携带油箱,工 作时受环境影响大,可靠性差。由于除冰机器人一般沿高压的电力线爬行,因此,最好能直接从电力线上获取能源,即耦合供电。对采用电流互感器耦合从电力线上获取电源的设计方法进行了深入研究,分析了机器人所需的最大驱动力与其重量的比率、磁芯的截面积、副边线圈匝数等变量的关系,实验结果验证了方案的可行性。采用电力线耦合供电虽然解决了巡线机器人长期工作的电源问题,同时也导致机械机构及控制系统的复杂化。这是因为机器人越障时,电流互感器磁芯须从电力线上脱离,需解决磁芯分离机构控制和备用电源切换技术 图 2-1 控制系统 这种系 统是适应控制系统,当外界条件变化时,为保证所要求的目的或为了随着经验的积累而自行改善控制系统,其过程是基于操作机的状态和伺服误差的观察,再调整非线性模型的参数,一直到误差消失为止。这种系统的结构和参数能随时间和条件自动改变。这种是事先无法编制运动程序,而是要求在运动过程中根据所获得的周围状态信息,实时确定控制作用。当外界条件变化时,为保证所要求的品质或为了随着经验的积累而自行改善控制品质,其过程是基于操作机的状态和伺服误差的观察,再调整非线性模型的参数,一直到误差消失为止。这种系统的结构和参数能随时间和条件 自动改变。因而本系统是一种自适应控制系统。 除冰机器人的设计 4 2.2 传感器的应用 2.2.1 温度传感器 系统选用温湿度一体数字式传感器 SHT11,该传感器将温湿度敏感元件、信号放大器、A/D 转换器、标准数据存储器、 I2C 总线等外围电路集成在了一个芯片上,不需外围电路,直接输出经过标定了的相对湿度和温度的数字信号。信号强度增加,抗干扰性增强,且长期稳定性也得到了保证,有效地解决了传统温、湿度传感器的不足。另外,还可以精确地测定露点,不会因为温湿度之间的温度差而引入误差。 ( 1)选择测量范围 和测量重量、温度一样,选择湿度传 感器首先要确定测量范围。除了气象、科研部门外,搞温、湿度测控的一般不需要全湿程 (0-100 RH)测量。 ( 2) 选择测量精度 。 测量精度是湿度传感器最重要的指标,每提高 个百分点,对湿度传感器来说就是上一个台阶,甚至是上一个档次。因为要达到不同的精度,其制造成本相差很大,所以使用者一定要量体裁衣,不宜盲目追求 “ 高、精、尖 ” 。如在不同温度下使用湿度传感器,其示值还要考虑温度漂移的影响。众所周知,相对湿度是温度的函数,温度严重地影响着指定 空间内的相对湿度。温度每变化 0.1 。将产生 0.5 RH 的湿度变化 (误差 )。 使用场合如果难以做到恒温,则提出过高的测湿精度是不合适的。多数情况下,如果没有精确的控温手段,或者被测空间是非密封的, 5 RH 的精度就足够了。对于要求精确控制恒温、恒湿的局部空间,或者需要随时跟踪记录湿度变化的场合,再选用 3 RH以上精度的湿度传感器。而精度高于 2 RH 的要求恐怕连校准传感器的标准湿度发生器也难以做到,更何况传感器自身了。相对湿度测量仪表,即使在 20 25 下,要达到 2RH的准确度仍是很困难的。通常产品资料中 给出的特性是在常温( 20 10 )和洁净的气体中测量的。 ( 3) 考虑时漂 和温漂 。 在实际使用中,由于尘土、油污及有害气体的影响,使用时间一长,电子式湿度传器会产生老化,精度下降,电子式湿度传器年漂移量一般都在 2%左右,甚至更高。一般情况下,生产厂商会标明 1 次标定的有效使用时间为 1 年或 2 年,到期需重新标定。 ( 4) 其它注意事项 。 湿度传感器是非密封性的,为保护测量的准确度和稳定性,应尽量避免在酸性、碱性及含有机溶剂的气氛中使用。也避免在粉尘较大的环境中使用。为正确反映欲测空间的湿度,还应避免将传感 器安放在离墙壁太近或空气不流通的死角处。有的湿度传感器对供电电源要求比较高,否则将影响 测量精度。或者传感器之间相互干扰,甚至无法工作。使用时应按照技术要求提供合适的、符合精度要求的供电电源。传感器需要进行远距离信号传输时,要注意信号的衰减问题。当传输距离超过 200m 以上时,建议选用频率输出信号的湿度传感器。 中国地质大学长城学院 2012 届毕业论文 5 2.2.2 光照传感器 在基础学科研究中, 光照 传感器更具有突出的地位。现代科学技术的发展,进入了许多新领域 ; 例如在宏观上要观察上千光年的茫茫宇宙,微观上要观察小到 cm的粒子世界,纵向上要观察长达数十万年的天体演化 。 此外,还出现了对深化物质认识、开拓新能源、新材料等具有重要作用的各种 极端技术研究,如超高温、超低温、超高压、超高真空、超强磁场、超弱磁砀等等。显然,要获取大量人类感官无法直接获取的信息,没有相适应的传感器是不可能的。许多基础科学研究的障碍,首先就在于对象信息的获取存在困难,而一些新机理和高灵敏度的检测 传感器的出现,往往会导致该领域内的突破。一些传感器的发展,往往是一些边缘学科开发的先驱。 光照 传感器早已渗透到诸如工业生产、宇宙开发、海洋探测、环境保护、资源调查、医学诊断、生物工程、甚至文物保护等等极其之泛的领域。可以毫不夸张地说,从茫茫的太空,到浩瀚的海洋,以至各种复杂的 工程系统,几乎每一个现代化项目,都离不开各种各样的传感器。 由此可见, 光照 传感器技术在发展经济、推动社会进步方面的重要作用,是十分明显的。世界各国都十分重视这一领域的发展。相信不久的将来,传感器技术将会出现一个飞跃,达到与其重要地位相称的新水平。 本系统是采用硅光电池 2DU6 作为光照传感器,该传感器的短路电流信号对此进行放大到 0-5V 供 A/D 模块转换之用。硅光电池是利用光生伏特效应把光直接转变成电能的器件。由于它可把太阳能直接变电能,因此又称为太阳能电池。它是基于光生伏特效应制成的,是发电式有源元件。它 有较大面积的 PN 结,当光照射在 PN 结上时,在结的两端出现电动势。 2.3 单片机的选用及硬件设计 为了适应各种应用领域的需要,世界各国都在不断地进行研制和开发。目前世界上最具实力的单片机开发公司有:美国的 Intel、 ATMEL,荷兰的 Philips,德国的 Siemens 等。其中 Intel 公司开发的 MCS-51 高性能 8 位机代表着单片机的发展方向,成为单片机领域中的主流产品,其他公司则纷纷推出了与 MCS-51 系列兼容的单片机, ATMEL 公司的 89 系列 Flash 单片机便是其中的一种。其以 Intel80C51/52 作为内核,并采用可重复编程的Flash ROM 技术,是一种源于 8051 而又优于 8051 的单片机,已成为广大 MCS-51用户进行电子设计与开发的优选单片机品种。根据系统的功能和要求,课题选用 ATMEL 公司 89 系列标准型单片机 AT89C51 作为控制中心。 硬件电路以 AT89C51 单片机为核心,计时采用 AT89C51 的计数器 1 作为定时时钟,人机对话接口主要由键盘显示打印电路、故障报警电路构成 ;处理转换 (A/D)电路构成 ;输出控制由光隔、继电器、执行器件构成 ;系统可靠性采取软件数字滤波和硬狗 MAX706 等技术。人机 对话功能主要通过 4位 LED 显示、 4位按键、蜂鸣器、打印机 (通过并行口 DB25 与 PC机通信打印 )来实现。 除冰机器人的设计 6 AT89C51 是一种低功耗、低电压、高性能的 8 位单片机,片内带有一个 4KB Flash EPROM,它采用了 CMOS 工艺和 ATMEL 公司的 NURAM 技术,且引脚和指令系统都与 MCS-51 产品兼容,最大特点就是其闪速存储器优越的在线可重复编程性能。其主要性能如下 :4KB 可改编程序Flash 存储器,可经受 1, 000 次的写入 /擦除周期 ;全静态工作 :OHZ 24MHZ; 三级程序存储器保密 ;128B(8 位 )内部 RAM; 32 条可编程 I/O 口线 ;2个 16 位定时器 /计数器 ;5个中断源 ;可编程串行通道 ;片内时钟振荡器 ;低功耗的闲置及掉电保护模式。 AT89C51 单片机有 40 个引脚,为 CMOS 工艺双列直插封装 (DIP),其引脚配置见图 2。现将各引脚功能分述如下: (l)主电源引脚 VCC 接 +5V 电源正端, GND 接 +5V 电源地端。 (2)时钟震荡电路引脚 XTALl 和 XTAL2 (3)控制或与其它电源复用引脚 RST、 ALE/PROG 、 PSEN 和 EA /VPPRST 为复位输入端 ;ALE为地址锁存允许信号, PROG 为 Flash 存储器编程脉冲输入端 ;PSEN 为外部程序存储的读选通信号 ;EA 为访问外部程序存储器允许端, VPP 为 Flash 存储器编程电源 12V 输入端。 (4)输入 /输出引脚 PO.O PO.7, P1.0 1.7, P2.0 P2.7 和 P3.O P3.7PO 口 (PO.0PO.7)是三态双向口,通称数据总线。 Pl 口 (P1.0 P1.7)是准双向口,专门供用户使用的I/O 口。 P2口 (P2.0 P2.7)也是准双向口。 P3口 (P3.0 P3.7)是双功能口,第一功能是一般 I/O 口,第二功能定义具体见表 1所示。存储器分开编址的,它们有各自的寻址系统 、控制信号和特定功能。程序和数据存储器在物理和逻辑上均分为两个地址空间 :内部存储空间和存储器分外部存储空间。这里系统的数据量不太大,程序也不太长, AT89C51 片内的 4KBROM 闪速存储器和 128B 的 RAM 数据存储器即可满足要求,无需扩展片外 RAM 和 ROM,CPU 只需访问内部 RAM 和 ROM,故在硬件电路设计上将 EA 和 PSEN 引脚连在一起接 VCC,由一上拉电阻将其拉高。 AT89 内部存储器地址空间分配为 :片内 4KB 程序 Flash 存储空间(0000H OFFFH);片内 128 字节的数据存储空间 (OOH 7FH);特殊功能寄存器空间 (80H图 2-2 AT89C51 引脚图 中国地质大学长城学院 2012 届毕业论文 7 FFH);位寻址空间 (00H FFH)。 表 2-3 P3 口各引脚兼用功能表 这里本系统为典型的单片机应用系统,由于系统外围配置和应用电路的要求现有并行I/O 口已不能满足,故需要对 I/O 口线进行扩展。由于选用的单片机与 Intel 公司的 MCS-51系列是兼容的,故选用 Intel 公司的通用型可编程 I/O 接口扩展芯片 8255(3 8 位 )来扩展 I/O 口线最为简捷可靠。扩展方法选用广泛采用的总线扩展方法,这种方法十分方便,扩展的并行口 I/O 芯片的数据输入线 取自 AT89C51 的 PO 口,只分时占用 PO 口,并不影响PO口与其他扩展芯片的连接操作,不会造成单片机硬件的额外开支。 2.4 8255A 芯片与 AT89C51 接口电路设计 8255A 的端口选择地址线 AO 和 Al 分别接 AT89C51 的 P2.3、 P2.2 端,片选 CS 接 P2.1端,复位引脚接 AT89C51 的 RESET 端, 8255A 的控制线 RD 和 WR 分别接 AT89C51 的 RD 和 WR ,数据线 DO D7接 PO.0 0.7 端。 8255A 的工作方式这里选用方式 O(基本输入输出方式 )。在这种 方式下, PA、 PB、 PC 口均可设置为输入或输出,且不需任何选通信号。 8255A 是 Intel公司与其微处理器配套的通用可编程并行 I/O 接口扩展芯片,可与 AT89C51 系统总线直接连接,其引脚采用 40 线双列直插式封装,具体配置如图 3所示。各引脚功能分述如下 : 数据总线 (8 条 )DO D7 为双向数据总线,用于传送 CPU 和 8255A 间的数据、命令和状态字。控制总线 (6 条 )RESET 为复位线,高电平有效。 CS 为片选线,低电平有效。若为高电平,则 8255A 不被选中工作 ;RD 为读命令线, WR 为写命令线,均为低电平有效。 RD 为低电平 (WR为高电平 )则本片 8255A 处于读状态 ;为低电平 (WR 为高电平 ),则所选 8255A 处于写状态。A0 和 Al 为口地址选择线,用于选中 PA 口、 PB 口、 PC 口和控制寄存器中的哪一个工作。并行 I/O 口线 (3 8 位 )PA 口、 PB 口、 PC 口用于和外设通信。电源线 (两条 )VCC 为 +5V 电源线,允许变化 10%, GND 为地线。 数据总线 (8 条 )DO D7 为双向数据总线,用于传送 CPU 和 8255A 间的数据、命令和状态字。控制总线 (6 条 )RESET 为复位线,高电平有效。 CS 为片选线,低电平有效。若 CS 为高电平,则 8255A 不被选中工作 ;RD 为读命令线, WR 写命令线,均为低电平有效。 RD 为低电平 (WR 为高电平 )则本片 8255A 处于读状态 ;RD 为低电平 (WR 为高电平 ),则所选 8255A 处于写状态。 A0 和 Al 为口地址选择线,用于选中 PA 口、 PB 口、 PC 口和控制寄存器中的哪一个工作。并行 I/O 口线 (3 8 位 )PA 口、 PB 口、 PC 口用于和外设通信。电源线 (两条 )VCC为 +5V 电源线,允许变化 10%, GND 为地线。 引脚 第二功能 引脚 第二功能 P3.0 P3.1 P3.2 P3.3 RXD(串行输入口) TXD(串行输入口) INT0(外部中断 0) INT1(外部中断 1) P3.4 P3.5 P3.6 P3.7 T0(定时器 0 的外部输入 ) T1(定时器 1 的外部输入 ) WR(外部数据存储器写选通 ) RD(外部数据存储器读选通 ) 除冰机器人的设计 8 2.5 时钟电路的设计 AT89C51 单片机内部有个振荡器,可以用作 CPU 的时钟源。这里系统时钟选用内部方式,因为这种方式结构紧凑、成本低廉、可靠性高。 AT89C51 内部含有一 个高增益的反相放大器,通过 XTALI(输入端 )、 XTAL2(输出端 )外接作为反馈元件的片外石英晶体 (或陶瓷谐振器 )和电容 C1、 C2组成的并联谐振电路后便构成片内自激振荡器,从而利用部的振荡器产生时钟。连接方法见图 4 所示,其中晶体呈感性,其决定着振荡器的振荡频率 ;电容C1、 C2 对频率有微调作用。电路中反馈元件选用石英晶体,电容 C1 和 C2 均为 30PF,电容的安装位置应尽量靠近单片机。 图 2-5 时钟电路连接图 图 2-4 8255A 引脚配置 C2 C1 XTAL2 AT89C51 XTAL1 END Y1 中国地质大学长城学院 2012 届毕业论文 9 2.6 ADC0809 引脚配置及其接口电路设计 ADCO809 芯片属 ADC0808 系列多通道 8 位 CMOS 模数转换器。其芯片内置有多路模拟开关以及通道地址译码和锁存电路,因此能够对多路模拟信号进行分时采集与转换。 ADCO809 是 8位逐次比较式 A/D 转换芯片, 28 引脚,双列直插封装,具有地址锁存控制的 8路模拟开关,应用单一 +5V 电源,其模拟输入电压范围为 O +5V,对应的转换数字量为 00H FFH,转换时间为 1OOuS,无须调零或调整满量程。因此能够实现 8 路模拟信号的分时采集和转换 (每个瞬间只能转换一路 ),转换后的数据送入三态输出数据锁存器。 A/D 转换原理及过程 :ADC0809 最多允许 8路模拟量分时输入,共用一个 A/D 转换器进行转换,由 A、 B、 C 编码选择通道号通过最高位 (DN-1)至最低位 D0 的逐次检测来逼近被转换的输入电压。 A/D 转换过程主要包括采样量化及编码。采样是使模拟信号在时间上离散化,量化及编码是把采样后的值按比例变换成相应的二进制数码。如 8 位 A/D 转换器所采集到的 O5V 电压转换成为 OOH FFH 相对应的数字量。通过数字量的运算比较的结果实现对模拟量的测量及控制。 ADC0809 引脚配置见图 9 所示,引脚功能如下 :INO 7 为 8 个输入通道的模拟输入端 ;DO D7为 8 位 数字量的输出端 ;A、 B、 C 和 ALE 控制 8路模拟通道的切换, ALE(地址锁存信号 )高电平时把 3 个地址信号送入地址锁存器,并经译码器得到地址输出,以选择相应的模拟输入通道。 A、 B、 C为输入地址选择线,三者编码对应 8个通道地址。 CAB=000111分别对应 INO IN7通道地址 ;START为启动信号,加上正脉冲后, A/D开始进行转换 ;EOC为转换结束信号,是芯片的输出信号。转换开始后, EOC 信号变低,转换结束后, EOC 返回高电平。这个信号可作为 A/D 转换器的状态信号来查询,也可直接用作中断请求信号 ;ENABLE(OE)为输出允许控制端,当给 0E 端输入高电平时,控制三态数据输出锁存器向外部输出转换数据结果 ;CLK 为时钟信号,其典型值为 64OKHZ; VREF(+)和 VREF(-)为 A/D转换器参考电压,由外部参考电压源提供 (典型值为 +5V);VCC 为电源电压,由于是 CMOS 芯片,允许的电源范围较宽可以从 +5 +15V, VCC 由 VCC 和 GND 引入。 由于 ADCO809 片内有三态输出锁存器,因此可直接与 AT89C51 芯片接口,即其 8位数据输出引脚可直接与 CPU 数据总线相连。接口电路的硬件逻辑设计主要是处理好 A/D 引脚与 AT89C51 主机的硬件连接,以实现 8 路模拟信号的分时切换选通。 ADC0809 的数据线 D0 D7 可直接和 AT89C51 的数据总线 PO.O PO.7 相连接, A/D 转换后的数字信号由 P0 口传送到 CPU。这里由于利用 TTL 芯片实现对系统 1/0 口线的扩展,无疑会加重 P0口负载。为了增强系统总线的驱动能力,特在 AT89C51 和 ADCO809 的数据线间增加双向总线驱动芯片 74LS245,同时能够有效地避免资源共享发生冲突。 具体连接如下 :74LS245 的 AO A7 引脚接 AT89C51 的 P0.0 P0.7 端 ;74LS245 的 BOB7引脚接 ADCO809 的数据线 DO D7;DIR 为方向控制端,这里接地 ;E 允许端也即片选端,这里接 AT89C51 的 P2.7 端。当 P2.7 端输出低电平时, E =O 有效, AT89C51 的传送 ;当 P2.7数据实现 B 到 A 方向的传送即从 ADC08O9 到 AT89C51 的传送,当 P2.7 置高电平时 , E 无效,三态门不通, Ai 和 Bi 成高阻态,这时数据总线可为 8255A 使用。 ADC08O9 的时钟频率范除冰机器人的设计 10 围要求在 10 1280KHZ 内,由于其内部没有时钟电路,故其时钟信号必须由外部提供。 这里 ADC08O9 的 CLK 端的时钟信号由十进制计数 /分频器芯片 4017 十分频后 C0 引脚提供,而 4017 的 CL 引脚 (分频输入端 )信号由 AT89C51 的 ALE 端提供, RST 引脚 (复位置 0端 )和 ENA 引脚均接地, QO Q9 端均悬空。 ADCO809 的 ALE 端由 8255A 的 PC4 端控制, ENABLE 端由 8255A 的 PC2 端控制, START端由 8255A 的 PC1 端控制。模拟输入通道地址的译码输入信号 A、 B、 C 由 AT89C51 的地址总线 P2.4、 P2.5、 P2.6 提供,其信号状态决定选择的通道。 8 路模拟通道共用一个 A/D转换器, 8路模拟信号分时转换,每个瞬间只能转换 1 路,各路之间的切换由软件变换通 道地址来实现。 8255A 的 PC1、 PC4 和 PC2 控制 ADC08O9 的启动、锁存和输出。 PC4=1 时,送模拟通道号地址到地址锁存器 ;PC4=0 时,地址锁存 ;当 PC1=1 时,启动 A/D 转换 ;转换开始后 EOC=0,转换结束则 EOC=1;当 PC2=1 时,输出转换结果。这些信号状态由指令时序形成。 ADCO809 芯片的转换速度在最高时钟频率下为 10OuS 左右,根据 A/D 转换器与微处理器接口方式及应用系统本身要求的不同,实现 A/D 转换所需软件的设计方法也不同。目前常用的控制方式 (即数据传送方式 )有 :程序查询方式、延时等待方式 (定时传送 )和中断方式。本系统 A/D 转换的实现采用程序查询方式, ADC0809 的 EOC 引脚接 AT89C5l 的 P3.2端。这里由微处理器向 A/D 转换器发出启动信号,然后读入转换结束信号,查询转换是否结束。若转换结束,可以读入数据 ;否则再继续读入转换结束信号进行查询,直至转换结束再读入数据。这种程序设计方法比较简单,可靠性高,但由于微机把许多时间都消耗在“查询”上,因而效率低,实际应用的许多系统对于消耗这点时间还是允许的,因此这种方法应用的比较普遍。传送时,首先送出口地址并以 PC2 端输出作为选通信号。当信号有效时, OE 信 号即有效,把转换数据送上数据总线,供单片机接收。 图 2-6 ADC08O9 管脚配置 中国地质大学长城学院 2012 届毕业论文 11 3 指令系统编程 3.1 运动及轴的指令系统 轴指令用来和旧的 Trio 控制器兼容。加速度率和减速度率可用 ACCEL 和 DECEL 轴参数设定。同时设定加速度率和减速度率, acc 率 : 参数单位决定于单位轴参数。加速度因子从 UNITS/SEC/SEC 输入。修改指令是设置单轴运动指令或单轴参数读写。 AXIS 参数在命令行或程序行特别有效。使用 BASE 指令改变基本轴。任何有效的 BASIC 表达式特定轴数。AXIS 指令可用于修改以下指令的轴参数: ADDAX, CAM, CAMBOX, CANCEL, CONNECT, DATUM,DEFPOS, FORWARD, MOVEABS, MOVECIRC, MOVELINK, MOVE, MOVEMODIFY, REVERSE, REGIST,WAIT IDLE, WAIT LOADED。 运动控制指令 BASE(轴 1,轴 2,轴 3) BA(轴 1,轴 2,轴 3) BASE 指令用于导向下一个运动指令轴的参数读 /写入特定轴或轴组,设置的缺省值依次为: 0, 1, 2 每一个过程有其自己的BASE 基本轴组,每个程序能单独赋值。 Trio Basic 程序 与控制轴运动的运动发生器分开。每个轴的运动发生器有其独立的功能,因此每个轴能以自己的速度、加速度等进行编程,单独运动,或者通过插补或链接运动链接在一起。 AXIS()命令只要应用正在进行的单命令可以重新导向不同的轴。而 BASE()指令除非规定轴号,否则导向接下来的所有指令。轴号:轴号或轴组号成为新的基准轴排列,即轴号或轴组发送运动指令给多轴指令里的第一个轴。基本轴的轴数和顺序轴在轴组用于多轴运动。 CANCEL 指令取消轴插补轴组的当前运动。速度轨迹( FORWARD, REVERSE, MOVE, MOVEABS, MOVECIRC)将会以 DECEL 参数减速直到停止。其它运动会立即停止。 DATUM 指令执行 6种方法中的一种搜寻原点位置,其为绝对位置同时可以重置跟随误差。伺服驱动器机构原点搜寻用于轴 0。轴 1用于 MC 控制单元机构。 DATUM 使用 CREEP 速度和目标速度用于原点搜寻。伺服驱动器用于轴 0。爬行速度用CREEP 参数设定。目标速度用 SPEED 参数设定。原点搜寻输入数由 DATUM_IN 参数决定,用于 3 或 7 中。 DATUM( 0)用于轴出错时重新启动系统,位置不变。 DATUM( 0)指令清除跟随误差。将当前位置设定为目标位置同 时 AXISSTATUS 状态会被清除。注如果产生错误的问题仍然存在,误差不能被清除。 1 轴以爬行速度( CREEP)正向运行直到发现 Z 信号。目标位置重置为 0同时纠正测量位置,维持跟随误差。 2 轴以爬行速度( CREEP)反向运行直到发现 Z信号。目标位置重置为 0 同时纠正测量位置,维持跟随误差。 3 轴以目标速度( SPEED)正向运行,直到碰到原点开关。随后轴以爬行速度正向运动直到原点开关复位。 目标位置重置为 0 同时纠正测量位置,维持跟随误差。 4 轴以目标速度( SPEED)反向运行,直到碰到原点开关。随后轴以爬行速度正 向运动直到原点开关复位。 目标位置重置为 0 同时纠正测量位置,维持跟随误差。 5 轴以目标速度( SPEED)正向运行,直到碰到原点开关。随后轴以爬行速度正向运动直到碰到 Z 信号。 目标位置重置为 0 同时纠正测量位置,维持跟随误差。 6 轴以目标速度( SPEED)反向运行,直到碰到原点开关。随后轴以爬行速度正向运动直到碰到 Z 信号。 目标位置重置为 0同时纠正测量位置,维持跟随误差。 除冰机器人的设计 12 MOVE 指令使一轴或多轴在目标速度,加速度和减速度下以增量的方式运动到特定位置。在多轴运动中, 速度,加速度,减速度是基于基本轴的插补运动。 特定长度的比例由转换因子 UNITS 参数设定。例如,一轴编码 4000edges/mm,于是轴的单元数设为 4000,MOVE( 12.5)将会移动 12.5 毫米。 MOVE 工作在缺省轴,除非 AXIS 定义临时基本轴。参数dist_1 定义为缺省轴, dist_2 作为另一个轴等等。通过改变轴在独立运动,非插补,非同步可以获得多轴运动。增量运动可以合并成连续运动轨迹,通过设置 MERGE=ON。 考虑两轴运动,每轴速度可以由以下等式计算得到。指令 MOVE ( x1, x2) 和速度Vp由 SPEED 控制 ACCEL 和 DECEL 参数计算得 到。多轴运动距离 L。 MOVEABS 指令使一轴或多轴在目标速度,加速度和减速度下以绝对的方式运动到特定位置。在多轴运动中, 速度,加速度,减速度是基于基本轴的插补运动。特定长度的比例由转换因子 UNITS 参数设定。例如,一轴编码器是 4000edges/mm,于是轴的单元数设为4000, MOVEABS( 12.5)将会从起始点移动 12.5 毫米。 MOVEABS 工作在缺省轴除非 AXIS 定义临时基本轴。参数 dist_1 定义为缺省轴, dist_2 作为另一个轴等等。通过改变轴在独立运动,非插补,非同步可以获得多轴运动。增量 运动可以合并成连续运动轨迹,通过设置 MERGE=ON。 考虑两轴运动,每轴速度可以由以下等式计算得到。指令 MOVE ( ax1, ax2) 和当前位置( ay1, ay2),速度 Vp由 SPEED, ACCEL 和 DECEL 参数计算得到。多轴运动距离 L。 每轴任何时候的独立速度计算如下: 任意轴 I的运动距离,从用户定义的基本轴开始。 X-Y 平面有一个笔,圆盘的位置相对与起始点固定。 REVERSE 反向连续运动,速度由 SPEED 参数设置。加速率由 ACCEL 参数设置。 REVERSE工作在缺省基本轴,除非 AXIS 定义临时基本轴。 反向运动可以被 CANCEL 或 RAPIDSTOP 指令停止。或到达反向限位,禁止或原点返回。 AXIS, CANCEL, FORWARD, RAPIDSTOP。 3.2 输入 /输出指令说明或编程 3.2.1 程序循环和结构循环 AIN(模拟通道)从模拟输入口读取数值,各种模拟输入模块可与运动控制器连接。有的运动控制器本身具有 1 至 2 个模拟输入。返回的值是十进位的,与读自 A 至 D 转换器的二进制数字相等。模拟输入通道 0 71, 0 31, P325 CAN 模拟输入通道 31 39,运动控制器本身模拟输入通道, 40 71, P225 模拟输 入子板 AIN2 通道的 S_RATE 参数可每分钟将数据转换成接近的值。对于 AIN1 和 AIN3 通道, T_RATE 参数可将数据转换成扭矩的百分率。生产线的速度由材料供给的速率决定。材料供给通过安装有超声传感器装置上松散的环安排。超声传感器输出范围在 0V 4V, 4V 时环最长,模拟输入值尽管应为正的值但也需检查确保大于 0。当值为负时进来的信号有噪音,由于除 FORWARD 或 REVERSE 外负速对与任一类型运动无效而引起错误。注意:模拟反应速度取决于所发生的模块。 P324 以 10msec更新, P225 以 SERVO_PERIOD更新,内置的模拟端口以 1msec 更新。如果未安装 P325 总中国地质大学长城学院 2012 届毕业论文 13 线模块, AIN(0)和 AIN(1)将读取内置的通道以保持与老版本的兼容。 HEX 指令用于打印语句,输出一个十六进制格式的数。 HEX 指令不用在 MC202 或 MC216,I/O 功能 IN ( input_number , final_input_number) / IN, IN 功能返回数字输入的值。 IN ( input_number, final_input_number)将会返回输入的二进制。两个参数必须小于 24 分隔。 IN ( input_number) 包 括输入值小于 32将会返回特定通道的值。 IN ( without arguments) 将会返回前 24 个输入的二进制。( IN ( 0, 23)。输入返回的值。值是在 0 到 31的整数。最后输入返回的值。值是在 0到 31 的整数。 I/O 功能 /指令, OP指令设置一个或多个输出或返回前 24个输出状态。 OP 有三种不同形式决定于参数。 PRINT指令让 Trio Basic 输出一系列字符串到串口,或合适的光纤端口。 PRINT 指令可以输出参数,固定 ascii 串,单个 ascii 字符串。只要多个项目用逗号,或分号分隔,都可以通过单个 PRINT 语句打印。逗号,分号控制输出字串的格式。 结构指令 IF condition THENelseENDIFIFconditon THEN IF THEN ELSE ENDIF 结构依据条件结果控制程序流程。如果条件真,接下来的 THEN 到 ELSE 将会执行。如果条件假, ELSE 将会执行或程序会跳到 ENDIF 如果没有ELSE。 ENDIF 用于标记条件段的结束。注意: IF THENELSEENDIF 过程可以没有限制的嵌套。对于多行 IF THEN 结构, 在 THEN 后没有任何陈述。单结构不用 ENDIF。 cindition任何有效的逻辑表达式。 commands 任何有效的逻辑表达式。 循环和条件结构指令 FOR variable=start to end step increment next variableFOR NEXT 允许将 FOR 和 NEXT 之间的部分重复执行多次。进入这个循环,变量初始化成 start 同时指令部分开始执行,直到执行到 NEXT 指令。 variable 以增量方式增加。直到 step 值, step 值可正可负。如果省略认为是 1。当 variable 小于或等于 end 时。重复执行指令区,直到 variable 大于 end。在 next 之后的程序继续执行。注意: FOR NEXT 在 BASIC 程序中可以嵌套 8 个指令。 variable 任何有效的 BASIC 表达式。既可以是一个环形变量或者是一个本地变量start,任何有效的 BASIC表达式 end任何有效的 BASIC表达式 increment任何有效的 BASIC表达式(可选) REPEAT, WHILE。 ON expression GOSUB label , labelON GOSUB 结构使能条件跳转。整数表 达式用于从列表中选择 label。如果表达式的值是 1,使用第一个 label,对于值 2 使用第二个label,以此类推。依据 GOSUB 指令执行子程序或跳转。如果表达式无效,不会执行跳转。expression 任何有效的 BASIC 表达式。 ON expression GOSUB label , labelON GOTO结构使能条件跳转。整数表达式用于从列表中选择 label。如果表达式的值是 1,使用第一个 label,对于值 2使用第二个 label,以此类推。依据 GOTO 指令执行子程序或跳转。如果表达式无效,不会执行跳转 。 WA ( time) WA 指令暂停程序执行一段时间。指令只能用在程序中。 time 暂停程序的毫秒数。以下例子将输出 11 置 OFF 两秒钟后输出 17 置 ON。 WAIT UNTIL condition, WAIT UNTIL 指令重复评估条件直到变成真。此后程序继续执行。指令只能用在程序中。 condition 任何有效 BASIC 逻辑表达式。 While condition, WHILE WEND 结构程序之间的指令连续执行,直到条件变成 FALSE。除冰机器人的设计 14 此时程序会继续执行 WEND 后的程序。注意: WHILE WEND 可以无限制嵌 套。 Condition可以出现任何有效的逻辑 BASIC 表达式。 3.2.2 恒量 常数, FALSE 常数返回数值零。常数为只读。 test: res=IN( 0), OR IN( 2), IF res=FALSE THEN, PRINT “ input are off” , Endif。常量 OFF 常量返回数值 0。常量为只读。 OP ( lever,OFF),以上设置输出名为 lever 的设置成 OFF。 常量 ON 常量返回值 1。此参数为只读。 OP ( lever, ON)以上命令将输出名为 lever 设置成 ON。常量 PI 常量返回数值 3.1416。此常量位只读。 circum = 100, PRINT “ Radius =” ;circum/( 2*PI),常量, TRUE 常量返回数值 -1。常量为只读。 test: T = IN ( 0) AND IN ,( 2) IF T = TRUE THENPRINT “ input are ON” ENDIF。 3.3 轴参数说明和编程 轴的参数, ACCEL 参数包括轴的加速率。单位 units/s2。参数可以是任意正数包括零。ADDAX_AXIS 参数返回由 ADDAX 连接的轴数。 此参数为只读参数。 表 3-1 AXISSTATUS 参数包括轴的状态 位数 描述 值 字符(用在 Motion Perfect中) 轴 0 (伺服轴) 轴 1(编码器输入 /输出 /虚拟轴) 轴 2 (虚拟轴) 0 - 1 - - - - 1 跟随误差报警 2 W X - - 2 伺服驱动器通讯错误 4 A X - - 3 伺服驱动器报警 8 M X - - 4 正向限位 16 F X X X 5 反向限位 32 R X X X 6 原点搜寻 64 D X X X 7 反馈限制输入 128 H X X X 8 跟随误差限制 256 E X - - 9 正向软件限位 512 X X X X 10 反向软件限位 1024 Y X X X 11 取消运动 2048 C X X X 12 编码器输出超速 4096 O - X - AXISATATUS 参数用于处理运动错误。 CREEP 包括轴的爬行速度。爬行速度用于进行原点搜寻。 CREEP 允许任何正值(包括 0)。 CREEP 速度单位为 units/s。使用因子转换。当 SERVO=OFF 时写进此轴参数允许用户强加一个指定电压到伺服候。 12 位 DAC 能采用的值范围为: DAC=2048 相应于 10V 电压, DAC=-2047 相应于 -10V 电压, 16 位 DAC 能采用的值范围为: DAC=32767 相应于 10V 电压, DAC=-32768 相应于 -10V 电压。 DECEL 参数包括轴中国地质大学长城学院 2012 届毕业论文 15 的减速率。单位为 units/s2。参数可以是任意正数包括零。 I_GAIN 参数包括轴的积分增益。积分输出通过计算跟随误差的总和。 -缺省值是 0。叠加积分增益到伺服系统减少静止或运动时的位置误差。他可以减少超调,振动。因此适用系统工作在常速和慢加速的场合。为了避免系统的不稳定性,伺服增益需在 SERVO=OFF 时改变。 MPOS 参数表示用户单位的测量位置,从 编码器得到。这个参数可应用 DEFPOS 指令设置。 OFFPOS 参数可用于移动起始点。MPOS 在上电时重置成零。测量位置的范围由 REPDIST 和 REP_OPTION 参数控制。 MTYPE 参数包括当前执行的运动类型。下面给出可能值。 MTYPE 可用于决定运动是否完成或运动类型已经改变。非空闲并不意味着轴在运动。它可以是零速运动或辅助其它轴做插补运动,而本身没有运动。 NTYPE 参数包括缓存中下一运动的类型。一旦当前运动结束,将会执行显示在 NTYPE 缓存中的运动。此值与 MTYPE 的参数相同。 NTYPE 通过 CANCEL 指令取消。 OFFPOS 参数包括应用在目标位置的偏移,不影响运动。测量位置随之改变。当系统加载偏移 OFFPOS 的值会被重置成零。偏移在下一伺服周期起作用。其它指令可能会在下一伺服周期之前执行。确定这些指令不是假想已经发生位置移动。这可以使用WAITUNTIL。 SERVO 参数决定基本轴工作在伺服控制( SERVO=ON)还是开环控制( SERVO=OFF)。在闭环中,运动控制算法将会输出速度参考信号,取 在开环中,速度参考完全取决于 S_RTE 参数。 SPEED 参数包括目标速度 units/s,它可以是任意正值(包括零)。目标速度是运动指令的最大速度。 UNITS 参数包括单位转换因子。单位转换因子使用户单位定义更方便,例如米,毫米或电机分辨率。轴的参数象速度,加速度,减速度和电机控制指令都以用户单位为基础。 注意: UNITS 参数可以是任何非零值,但是推荐用户单位与编码器整数脉冲相一致。改变 UNITS 将会影响轴的所有参数。 UNITS 参数保持系统相同的动力特性。 PP_STEP 参数包括与输入编码器线数成比例的整数值。输入编码器的线数会被 PP_STEP倍频。比例用于匹配电 机的高分辨率或机器沿圆弧运动编码器的线数与轴上的不同。有效范围: -1023, -1和 1, 1023。缺省值为 1。改变 PP_STEP 的值会影响位置控制环。相应的需要修改控制增益。 除冰机器人的设计 16 4 除冰机器人的运动模块 4.1 无线传输模块 本系统采用的新型无线收发模块 PTR2000 是一种超小型、超低功耗、高速率的无线数据传输模块。它采用串口传输和 FSK 调制,而且接收发射功能合一,因而抗干扰能力很强,采用低发射功率、高灵敏度设计,是目前低功率无线数据传输的理想选择。 PTR2000 的工作模式是由其 内部寄存器的设置决定的。 CS 为频道选择端, CS=0 时,选择工作频道 433.92MHz; CS=1 时,选择工作频道 434.33 MHz。 TXEN 为收发选择端,为 0时接收,为 1 时发送。通信速率最高为 19.20Kbit/s,但是也可以工作在 4800bps 和 9600bps下。在本系统应用中,进行通信的数据量并不大,且通信距离要求并不远,所以,采用了4800bps 的时速。主要是由于在低速的情况下,通信质量比较高,整个系统的稳定性也随之得以增强。 PTR2000 的 CS, DO, DI, PWR, TXEN 直接接 AT89C52 的串 口或 I/O 口。连接时, PTR2000无线模块的 DI端应接 AT89C52 串口的发送端 TXD, DO端应接 AT89C52 串口的接收端 RXD。 在发送数据之前,一般应将模块置于发射模式,即置 TXEN 为 1,然后再等待至少 5ms(接收到发射的转换时间需要)才可以发送任意长度的数据。发送结束后,应将模块置于接收状态,即置 TXEN 为 0。发射到接收的转换时间仍为 5ms。接收到的数据可直接送到AT89C52 串口。无线收发电路如图所示。 图 4-1 ptr2000 接口电路 V C CCSDODIG N DPW RTX ENPT R20 00T XDR X DP 1.3P 1.4P 1.5C110. 1u FC124. 7u FL140 0u HV C C中国地质大学长城学院 2012 届毕业论文 17 4.2 测控系统 测控系统 中被测信号由测量探头探测接收后,要经历很多道环节的处理 (在测量通道中被测量都经历了多次转换即多次量纲的变化 ),才能输出显示、打印、驱动执行器件动作。因此为了能够显示和打印带有被测量量纲单位的数值,就必须进行必要的变换,这里主要是用于数字运算、显示和打印输出的标度变换。标度变换有各种类型,应根据实际要求来选用适当的标度变换方法。在微机化测控系统中,因为被测对象的各种数据的量纲和数值与 A/D 转换的输入值是不同的,所有这些都必须经过变送器转换成 A/D 所能接收的信号O 5V,再由 A/D 转换成 OOH OFFH 的数字量 。这些数字量并不一定等于原来带有量纲的参数值,它们仅仅对应于参数值的大小,还须把它们转换成带有量纲的数值后才能用于运算、显示和打印输出。这里系统选用的除冰机器人传感器为线性电压输出模块,相对温度和输出电压值有着相对应的线性关系,故采用线性标度标度变换。它是最常用的变换方法。其变换公式如下 : m i nm i nm axm i nm i nm ax )( YNN NXYYY 式中 Y 表示参数测量值, Ymax 表示参数量程最大值, Ymin 表示参数量程最小值, Nmax 表示Ymax 对应的 A/D 转换后的输入值, Nmin 表示 Ymin 对应的 A/D 转换后的输入值, X 表示测量值 Y 对应的 A/D 转换值。微机按照上式从 A/D 转换结果 X 便可以计算出被测量的数值Y 用于显示或打印。进行标度变换,首先要赋予数据以合适的物理单位,也即一个单位转 换系数。由于 8 位的 ADC0809 的转换范围是 0 5v,即 0bit 对应 0v, 255bit 对应 5V,由上式可得到转换系数为 : b i tmvb i tb i t VVK /6.190255 05 即数字量 lbit 的变化对应于电压变化的 19.6mv。因此如求 YV 电压所对应的数字量时,只需令 X=Y/K(bit),再将 X 变为 16 进制数即可求得相应的数字量。控制原理图如图。 图 4-2 闭环控制逻辑原理框图 控制器 执行元件 受控对象 检测元件 给定值 R 反馈信号 被调量 除冰机器人的设计 18 4.3 控制功能模块 自动闭环控制功能的实现是通过对传感器输入的 8 路模拟信号进行分时转换、处理分析并与预设参数限值进行比较,予以判断,满足一定条件则执行相应控制功能。为保证采样值的稳定性和可信度,并尽可能的排除尖脉冲对个别采样点数据的影响和小的随机干扰,可采取对每路信号连续 5 次采样,并进行比较,按大小顺序排队除掉其中最小和最大值,然后计算剩余的 3 个数据的算术平均值,将其作为该路传感器的可用滤波输出值,进行后续处理。除冰机器人运动判定 流程图见图。 目前在我国条件下,除冰机器人工程自动监控系统宜采用定时除冰。本模块便可以自行设定不同时长的运动模式进行自动定时除冰。模块运行分别对各定时小时的除冰起止时间和除冰停止运行时间进行合法性判定,当读出的除冰时间大于设定的起始时间,将其视为非法,不予启动除冰,相反则启动除冰至设定除冰终止时间。传感器自动闭环控制是根据传感器自动采集的冰信息数据与预定值作比较,以决定输出控制的,可以是点控制也可以是段控。这里为段控,其可实现冰厚度值保持在一个预设的范围内,段值可自行设定。 中国地质大学长城学院 2012 届毕业论文 19 Y Y N Y N 冰的厚度越限 停止除冰 冰的厚度值越限报警 开 始 冰的厚度值是否低于下限值 冰的厚度值是否高于上限值 是否到达定时 除冰 返回 N 图 4-3 除冰运动判定程序流程图 除冰机器人的设计 20 4.4 系统软件的设计 微机化测控系统功能的实现要通过软件来完成,控制软件是系统控制思想的具体体现。当控制论要求发生改变时,只需修改相应软件即可实现预期的控制功能,而控制软件的设计要使用一定的语言来完成。目前支持单片机应用系统开发的语言一般有机器语言、汇编语言和高级语言 (如 C51、 PL/M51 等 )。但由于微机化测控系统的实时性很强,而采用汇编语言可以准确计算出控制操作时间,满足实时性要求,故多采用汇 编语言编写系统程序。在用汇编语言编程时,编程者可以直接操作到机器内部的寄存器及存储单元,能把处理过程刻划的非常具体,通过优化能编制出高效程序,既可节省存储空间又可提高程序执行速度,在空间和时间上都充分发挥了微型机的潜力。 目前,常用的开发软件有 Intel 公司的 ASM51、美国 Cybernetic、 MicroSystem Inc 公司的 Cys8051 等。这里针对系统实时性强的特点,系统软件的开发全部采用 Intel 公司的ASM51 汇编语言进行。 这里系统程序的开发,采用了流行的模块化设计方法。在程序设计中,可根据 系统功能,将整个软件系统划分为若干个功能相对独立易于解决的模块,每个模块是一个结构完整,相对独立的程序段,能完成某一规定的任务,实现某个具体的功能。采用模块化编程的方法可使程序易于编写、维护调试和修改,便于程序员分工。模块化程序结构清晰,组合灵活,可读性好,易于验证,可靠性高,便于功能扩充和版本升级,程序的修改可局部进行,还可建立频繁调用的子程序。系统软件的设计,按功能可划分为以下程序和子程序 :键盘监控管理子程序、控制功能子程序、控制设定程序、系统监控程序、数据检测程序数据处理程序等。下面分别就主要程序模块 的编程思想和方法加以阐述。 整个系统的软件可分为外设初始化模块、系统参数设置模块、信号采集模块、数据存储模块和控制模块五部分 ,软件流程图如图所示。 外设初始化模块主要完成液晶显示屏、串行实时时钟芯片及其它外设的初始化。参数设置功能模块主要完成控制参数设置。数据存储模块完成除冰机器人传感器的 A/D 转换后的数据的存储。 单片机初始化完成以后 ,发出指令采集 冰块数据 ,经过信号调理电路转换后 ,将转换的电压值 送入控制模块进行比较判断 ,比较时参照预先设定 的温度平衡位置的电压范围 ,电压值若处于平衡范 围内 ,则单片机发出指令 ,系统 按照原来的 除冰 时间 和除冰顺序进行除冰 ,如果超出这个范围 ,则判断偏 离湿度平衡位置的方向 ,发出指令根据预先设定的 参数值来调整除冰时间和除冰顺序。整个系统不停的除冰、比较判断、调整 ,最终使 冰的厚度 保持在 希望的范围内。 中国地质大学长城学院 2012 届毕业论文 21 上 电 外设初始化 设置控制参数? 系统启动否? Y 系统参数设置模块 读除冰机器人传感器的 A/D 转换结果 调用控制模块 调用控制输出模块,将信号输出 N 图 4-4 控制系统程序框图 数据存储 数据显示 除冰机器人的设计 22 4.5 系统监控程序设定 系统监控程序是系统的主程序,它是系统程序的框架,控制着单片机系统按预定操作方式运转。监控程序的主要作用是能及时的响应来自系统内部的各种服务请求,有效地管理系统自身软 硬件及人机对话设备与系统中其它设备交换信息,并在系统一旦出现故障时,及时作出相应处理。 系统监控程序的组成主要取决于测控系统的组成模块以及系统的硬件配备与功能,但习惯上监控程序主要是指键盘解析程序,而其它功能都分散在某些特定功能模块中。主要工作流程为 :系统上电后完成自检进入初始化状态,然后进入键盘检测和扫描,如有键按下则转入键盘解析程序。其程序流程图如图。 中国地质大学长城学院 2012 届毕业论文 23 开 始 上电复位自检 自检是否有误? 系统初始化 冰块采样计算 显示时钟 监控模块 冰块厚度判定 返回 显示错误 返回 Y N 图 4-5 系统监控程序流程图 除冰机器人的设计 24 参考文献 ( 1)张屹,邵威,高虹亮,罗成 . 高压输电线路除冰机器人的机构设计 J.三学大学学报, 2008.12,Vol.30 No.6: P69-72. ( 2)高虹亮,孟遂民,罗成,马小强 .架空输电线路除冰机器人的结构设计 J.电力建设, 2009.3, Vol.30 No.3: P93-96. ( 3)甘辰予,陈劲生 .LEGO 智能除冰机器人的设计 J.大众科技, 2009.10, No.10. ( 4)蒋正龙,陆佳政,雷红才,黄福勇 . 湖南 2008 年冰灾引起的倒塔原因分析 J.高电压技术, 2008.11,Vol.34 No.11: P2468-2474. ( 5) 吴功平,肖晓晖,肖华,戴锦春,鲍务均,胡杰 . 架空高压输电线路巡线机器人样机研制 J.电力系统自动化, 2006.7.10, Vol.30 No.13: P90-107. ( 6)张运楚,梁自泽,谭民 . 架空电力线路巡线机器人的研究综述 J.机器人, 2004.9, Vol.26 No.5:P467-473. ( 7)许源 刘人玮 李军 . 湖南电网防冻融冰体系改革之探讨 J.2003,Vol.23 No.5:P24-27. ( 8)李红旗,陈志高,于钦刚,李翔,陈 懿夫 . 输电线路机械除冰技术研究 J.自然灾害对电力设施的影响与应对研讨会 2008.5,Vol.23 No.5:P24-27 ( 9)李宁,周羽生,邝江华,彭琢 . 输电线路除冰技术的研究 J. 防灾科技学院学报 ,2008.9, V01 10 No 3:P33-37. ( 10) Serge Jourden. De leer Installation at Lrvis Substation on Hydro Qurbec s High Voltage SystemJ.SOUTHERN POWER SYSTEM TECHNOLOGY, 20099, Vol.3 No.1: P1-6. ( 11)濮良贵,纪名刚 . 机械设计 M. 北京 :高等教育出版社, 2002. ( 12)张红先,李波,方针 . 2008 年湖南电网冰灾中技术措施的应用效果分析 J. 湖南电力 ,2008,Vol.3 No.3:P10-16 ( 13)周良德,朱泗芳 . 现代工程图学 M. 湖南科学技术出版社, 2002. ( 14)濮良贵 ,纪明刚 . 机械设计 M. 北京:高等教育出版社, 2006. ( 15)杜蕴莹,邢军,王澄,叶勇,严行健 . 南方覆冰灾害造 成输电线路倒塔原因及策略的研究 J. 江苏电机工程, 2008.11,Vol.27 No.6:P14-17. ( 16)李庆峰,苑峥,吴穹,高剑,宿志一,周文俊 . 全国输电线路覆冰情况调研及事故分析 J. 电网技术, 2008.5,Vol.32 No.9:P33-36. ( 17)陆佳政。张红先,李波,方针 . 2008 年湖南电网冰灾中技术措施的应用效果分析 J. 湖南电力,2008,Vol.28 No.3:P10-16. ( 18)何清,阮羚 . 输电线路除 (融 )冰新技术分析及实施可行性研究 J. 湖北电力 2008.4, Vol.32 No.2:P42-44. ( 19)马一民 ,白雪松 . 浅谈输电线路除冰方法, R.报告地 :北京,报告会主办单位:国网北京电力建设研究院, 2008.5. ( 20) 许树楷,赵杰 . 电网冰灾案例及抗冰融冰技术综述 J. 南方电网技 2008.4, Vol.2 No.2:P1-6. 中国地质大学长城学院 2012 届毕业论文 25 致 谢 四年的本科学习生涯即将结束 ,在本人做毕业设计中,得到了我的指导老师杨义勇的悉心指导和无私帮助。他严谨的治学态度和谦和的为人给我留下了深刻的印象。在我的课题调研和设计阶段,虽然杨老师公务繁忙,教 学任务重。依然对我的设计工作悉心指导,对我的开题方向和研究内容做了大量的工作。 最后我要深深地感谢我的家人,正是他们含辛茹苦地把我养育成人,在生活和学习上给予我无尽的爱、理解和支持,才使我时刻充满信心和勇气,克服成长路上的种种困难,顺利的完成大学学习。 还有许许多多给予我学业上鼓励和帮助的师长、朋友,在此无法一一列举,在此也表示忠心地感谢! 大学生活的结束,也是我人生新的生活起点,我将谨记老师们的教诲,将自己的所学奉献给社会! 除冰机器人的设计 26 附录 Private Sub Command1_Click() Form2.Show Unload Form1 End Sub Private Sub Form_Load() Label1.Caption = 欢迎使用 PCI208 运动控制界面 Label1.FontSize = 18 Label1.Font = 楷体 _GB2312 Form1.BackColor = &HFFFF80 End Sub Option Explicit Dim g_brunningIO As Boolean Dim g_brunningMove As Boolean Dim g_nIOCount As Integer Dim g_nMoveNo As Integer Const gk_sDefaultHostAddress As String = 192.168.0.250 Const gk_nDefaultPciBoard As Integer = 0 Const gk_nDefaultLink As Integer = 0 Const gk_ndefaultMode As Integer = 0 Const gk_nMaxAxes As Integer = 8 Const gk_nAxesInUse As Integer = 3 Private Sub Command1_Click() Dim bopen As Boolean TrioPCI.HostAddress = gk_sDefaultHostAddress TrioPCI.Board = gk_nDefaultPciBoard bopen = TrioPCI.Open(gk_nDefaultLink, gk_ndefaultMode) Call UpdateButtonStates Refresh End Sub Private Sub Command2_Click() If TrioPCI.IsOpen(gk_ndefaultMode) Then TrioPCI.Close (gk_ndefaultMode) End If Call UpdateButtonStates Refresh End Sub Private Sub Command3_Click() Call InitAxes If TrioPCI.IsOpen(gk_ndefaultMode) Then Call proccessStateRun End If 中国地质大学长城学院 2012 届毕业论文 27 End Sub Private Sub Command4_Click() Dim Axis As Integer Dim bok As Boolean Dim dreadval As Double If TrioPCI.IsOpen(gk_ndefaultMode) Then g_brunningMove = True If g_brunningMove Then For Axis = 0 To 2 bok = TrioPCI.Op(12 + 2 * Axis, 1#) Do Until Label(33 + Axis).Caption = on Call readIO Loop If Label(33 + Axis).Caption = on Then bok = TrioPCI.Op(12 + 2 * Axis, 0#) End If Call ReadAxisPostions Next nAxis g_brunningMove = False Call UpdateButtonStates End If End If End Sub Private Sub Command5_Click() End End Sub Private Sub Form2_Load() g_brunningIO = False g_brunningMove = False timUpdate.Enabled = True g_nIOCount = 0 g_nMoveNo = 0 UpdateButtonState End Sub Private Sub Form_Load() Label27.Caption = 运动距离的输入: Label27.FontSize = 15 Label31.Caption = 轴位置显示: Label31.FontSize = 15 Label32.Caption = I/O 状态显示: Label32.FontSize = 15 Form2.BackColor = &HC0FFC0 End Sub Private Sub Form_Unload(Cancel As Integer) 除冰机器人

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论