(机械电子工程专业论文)某光电跟踪控制系统中dsp与can总线技术的应用.pdf_第1页
(机械电子工程专业论文)某光电跟踪控制系统中dsp与can总线技术的应用.pdf_第2页
(机械电子工程专业论文)某光电跟踪控制系统中dsp与can总线技术的应用.pdf_第3页
(机械电子工程专业论文)某光电跟踪控制系统中dsp与can总线技术的应用.pdf_第4页
(机械电子工程专业论文)某光电跟踪控制系统中dsp与can总线技术的应用.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(机械电子工程专业论文)某光电跟踪控制系统中dsp与can总线技术的应用.pdf.pdf 免费下载

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

文档简介

摘要 本文主要对光电自动跟踪系统的粗精复合控制进行了研究,以实现对空间 目标的快速,高精度跟踪。设计了基于t m s 3 2 0 l f 2 4 0 7 ad s p 的控制板运用其片 上丰富的资源,搭配外围电路,实时采集电视跟踪器反馈回来的位置偏差模拟量 完成模数转换,运用p i d 控制算法产生控制量使c c d 摄像头快速跟踪目标用 d s p 实时采集光电编码器的输出脉冲来获取小车的转向信息,通过无线数传模块 将车轮运动命令传送给小车上的伺服控制器,进而驱动电机,实现了对小车的准 确运动控制。基于v e r i l o gh d l 语言完成了五路异步通信单元u a r t 的软件设计, 采用现场可编程门阵列( f p g a ) 为核心处理单元完成了硬件设计并完成了f p g a 与d s p 的接口电路的设计和制作。在q u a r t u s i i 软件中进行了软件仿真和用其 内嵌逻辑软分析仪s i g n a l t a p i i 完成了硬件调试。以d s p 自带的c a n 2 o b 控制 器为硬件基础完成了基于c a n o p e n 高层通信协议的驱动程序设计,实现了标准定 位模式,标准速度模式实验测试,并给出了p v t 模式的程序流程图。 关键字:光电跟踪d s pc a n 总线 a b s t r a c t kt h i s t l l e s i s ,t l l ec o a r s c f i n ec o m p o s i t ec o m r o lo fp h o t o e l e c t r i ca u t o m a t i c t r a c k i n ga n dp o i m i n gd e v i c eo nm o b i l ei ss t i l d i e d ,s ot l l a tt h ed e v i c ec a i la c q u h ,仃a c k a i l d p o i n tt a r g c 临a tl l i g h - s p e e d a i l d h i g h - p r e c i s i o n ac o n 扛o lb o a r db a s c do n t m s 3 2 0 l f 2 4 0 7 ad s pi sd e s i g l l e d t h ea n a l o go ft h ep o s i t i o nd e v i a t i o n 触d e db a c k b yv i d e o 仃a c k e ri sc o l l e c t e dr e a lt i m ew i t h l er i c hp 谢p h e r a lc i r c u i t so fd sp ,a n d m e ra n a l o g - d 硒t a lc o n v e r s i o nt h ec o n n o lq 咖t i 哆i sp r o d u c e dt h r d u 曲p i dc o n 仃o l a i g o r i t h mt 0m a k et h ec c d c 锄e mt m c kt 壬l et a r g e tq u i c y s t e e r i n gi n f 0o f t l l em b o t i sa c q u 砌m r o u 曲m eo u t p u tp u l s eo fp h o t o e l e c 仃i ce n c o d e rc o l l e c t e db yd s p r e a l t i m ea n ,t l l e nm em o t o r sa r ed r i v e n ,觚df i n a l l yn l er o b o t sm o v i n gi sc o n t r o l l e d a c c u r a t e l 弘t h es o 细a r eo f 丘v c1i a r ti sa c c o m p l i s h e db a s e do nv e 删o gh d l ,a 1 1 d t h eh a r d w a r ea n dt h ei n t e m 啪谢t 1 1d s pa r ed e s i g i l e d 晰t hf p g aa sk e yp m c e s s e d u n i t t h es o f t w a r es i m u l a d o n0 fm em o d l ei st a k e ni i lt l l es o f t 诅r eo f q u a r l l j s i i ,a i l d t h eh a r d w a r ed e b u g g i n gw a sf i i l i s h e du s i n g8 i g n a l t 印i i ,姐 e m b e d d e dl o g i c a la n a l 皿n gi n s 仇蚴e n t t h e 嘶v i n gp r o 伊锄b a s e do nc a n o p e i ll l i 曲 l e v e lc o 删彻n j c 撕o np r o t o c o i i sa c c o m p l i s h e db a s e do nc a n 2 o bc o n 们l l e ro fd s p 嬲h a r d w a r e ,r e a l i z i n ge x p e r i r n e n tt e s to ft h ep r o f i l e dv e l o c 时m o d e la 1 1 dt 1 1 ep r o f i l e d p o s i t i o nm o d e l ,a i l dt l l ep r o 掣锄n o w c h a no f t h ep v tm o d e l i s 舀v e n k e yw o r d s :p h o t o e i e c t ct m c “n g d s pc a nb u s 西安电子科技大学 学位论文独立性( 或创新性) 声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人躲舷 日艇! 盟兰墨 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文( 与学位论文相关) 工作成果时署名单位仍然为 西安电子科技大学。学校有权保留送交论文的复印件,允许查阅和借阅论文;学 校可以公布论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保 存论文。 本人签名: 导师签名: 日期丝短兰兰 日期趔:墨生 第一章绪论 第一章绪论 1 1 研究背景 在国家防务中各类先进制导武器,为高技术武器的发展提供了特有的研究空 间,特别是海湾战争和科索沃战争中空中精确打击武器的大量应用。在2 1 世纪对 战导武器的要求是:必须建立完善的作战系统,必须对不同的目标具备精确的打击 能力,必须具有应急机动作战能力,必须具有远程精确打击能力。必须具有防空 作战能力,必须具有较高的战场适应能力。而其中实施战术打击及其效果评估、 精确制导武器的研制评价中,机载光电跟踪测量设备是最有效手段之一。由此, 机载光电跟踪测量设备是发展高技术武器研制过程中不可缺少的关键测量设备, 同时也是机载火控系统中的关键设备。 除此之外,在机械制造,航空航天以及水电建筑行业中,各种几何量的测量 极其重要,测量的准确与否,直接关系到产品的品质和成本。而传统的测量技术 已不能满足无导轨测量空间运动目标轨迹、姿态的检测、标定和跟踪要求,因此 光电跟踪测量技术的研究有其特殊的必要性和重要意义。 光电跟踪设备是用来测量各种导弹,飞行目标运动轨迹数据和飞行状态的光 学测量仪器,也是校准无线电测控系统的基本设备。与无线电侧量设备相比,它 具有精度高、直观性强( 可记录目标图像) 、不受地面杂波干扰等优点。光电跟踪 设备一般由光学系统( 望远镜) 、跟踪伺服系统( 包括跟踪电视、跟踪架、跟踪处 理器和电控装置) 、测角系统( 方位、俯仰编码器) 、记录系统等组成。 光电跟踪设备一般有方位角、俯仰角两套相互独立的跟踪伺服系统。从控制 原理角度来看,除了方位系统有正割补偿环节以外,两套系统的结构基本相同, 是一种典型的带有速度内回络的双闭环单输入单输出位置随动系统。 除了武器以外,光电跟瞄系统在激光通信、天文观测、航空摄影、靶场测试 等领域也都取得了日益广泛的应用。在激光通信方面,利用激光束传递信息,其 有效带宽在理论上可以比平常的通信信道容量增加1 0 0 0 0 倍。由于用激光束通信的 信息不易被截获,通信系统不易被人为干扰等非常具有诱惑力的特点,同时由于 大容量、机动性和保密通信的需求,吸引人们研究和开发激光通信。然而,能否 解决这种通信系统双端的自动跟瞄问题,几乎成为其能否付诸实用的关键。虽然 在这些领域中对光电跟瞄系统要求的侧重点各不相同,但总的趋势都是向高精度、 高速度、强适应性发展。要达到高精度,除了要有高性能的光电传感元件之外, 快速、灵活而精度高的伺服系统也是关键。而常规的跟瞄伺服系统无论快速性还 是精度和抗干扰性都很难满足要求,所以对光电跟瞄装置的结构和控制方案的研 究已成为必然1 1 】【2 】【3 】。 2 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 1 2 国内外发展动态 我国对光电捕获跟踪探测设备的研究与制造历经3 0 年,主要研制单位有中 国科学院光电技术研究所和中国科学院长春光机所。己研制成功十余种一百多台 套,主要用于靶场光电测量。我国研制用于靶场的光电捕获跟踪测量设备有: 2 6 0 电影经纬仪:2 6 0 电影经纬仪是中国科学院长春光机所8 0 年代末研制的 全数字车载式光电捕获跟踪测量设备,具有电视和红外传感器,动态测角精度为 2 5 ”。编码器既用于测角,又用于测速,采用1 6 位系统机和d s p 进行数字p i d 控制和数据处理,跟踪运动速度为2 0 。s ,加速度为7 。s 2 的目标时,跟踪系统 误差均方根值在3 以内,两帧间误差的变化约3 0 ”。 d g c 电视跟踪测量经纬仪:d g c 电视跟踪测量经纬仪是中国科学院光电技术研 究所9 0 年代中期研制的产品。它具有捕获电视和跟踪测量电视传感器和激光测 距传感器,动态测角精度为1 0 ”。采用力矩电机驱动,可对超低空、近距离的小 目标进行捕获、跟踪和测量,采用的也是复合控制和速度滞后补偿技术,跟踪运 动速度为4 0 。s ,加速度为2 0 。s 2 的目标,跟踪误差小于2 57 。 e o m s 光电经纬仪:e o m s 光电经纬仪具有变焦距电视,捕获电视和精跟踪测量 电视,动态测角精度7 ”。采用2 1 位编码器测角,也用于测速,力矩电机直 接驱动,复合控制和数字p i d 算法与模糊控制技术相结合,跟踪运动速度为3 0 。s ,加速度为1 0 。的目标,跟踪误差 6 ;dy _ dy 6 ;d s p 内置的是l o 位模数转换模块,因此需 要把a d 转换的结果左移6 位后存入规定的变量 3 2 3 小车移动控制模块设计 小车的移动依靠两轮独立驱动,小车移动控制模块主要包括键盘和转向盘构 成的移动信息产生输入接口模块和d s p 自带的正交编码电路和增量式光电编码器 构成的移动信息采集模块两部分。键盘输入控制小车的启动停止,模拟量端口输 入的电压大小与小车行驶的速度成正比,转向盘带动光电编码器产生小车的转动 方向和速度。 3 2 3 1 d s p 正交编码电路介绍1 1 2 j d s p 有两个事件管理模块e v a 和e v b ,每个模块都有一个正交编码电路。该电 路被使能后,可以在编码和计数引脚c a p l q e p l 和c a p 2 ( 对于e v a 模块) 或 c a p 3 q e p 3 和c a p 4 q e p 4 ( 对于e v b 模块) 上输入正交编码脉冲。正交编码脉冲电 路可用于连接光电编码器以获得旋转机械的位置和速率等信息。如果使能了正交 编码脉冲电路,则相应引脚上的捕获功能将被禁止。 a ) 正交编码脉冲电路的引脚 两个q e p 输入引脚与捕获单元1 和2 ( 或3 和4 ,对于e v b ) 模块共享,因此 需要正确设置c a p c o n x 寄存器中相应的位来使能正交编码脉冲电路,并禁止捕获 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 功能,从而将相关的输入引脚分配给正交编码脉冲电路。 b ) 正交编码脉冲电路的编码操作 正交编码脉冲是两个频率变化且正交的脉冲。当它由电机轴上的光电编码器 产生时,电机的旋转方向可通过检测两个脉冲序列中的哪一列先到达来确定,角 位置和转速可由脉冲数和脉冲频率来决定。 每个e v 模块中的正交编码脉冲电路的方向检测逻辑决定了两个序列中的哪一 个是先导序列。接着它就产生方向信号作为通用定时器2 或4 的计数方向输入。 如果c a p l q e p l ( c a p 3 q e p 3 ,对于e v b 模块) 输入是先导序列,则通用定时器进 行增计数;如果c a p 2 q e p 2 ( c a p 4 q e p 4 ,对于e v b 模块) 输入是先导序列,则通 用定时器进行减计数。 两列正交输入脉冲两个边沿都被正交编码脉冲电路计数,因此,产生的时钟 频率是每个输入序列的4 倍,并把这个时钟作为通用定时器2 或4 的输入时钟。 图3 4 给出了正交编码脉冲,增减计数方向以及其时钟的波形。 删i 几门r 几几几门厂 哪z 门几n 广 几几n 厂 四倍频 c l x o 琢厂一 图3 4 正交编码脉冲和编码定时器时钟及方向 通用定时器2 或4 总是从计数器中的当前值开始计数,因此可以在使能正交 编码脉冲电路前将所需要的数值装载到所选通用定时器的计数器中。当正交编码 脉冲电路的时钟作为通用定时器的时钟源时,选定的通用定时器将忽略输入引脚 t d i r a b 和t c l k i n a b ( 定时器方向和时钟) 。通用正交编码脉冲电路作为时钟输 入的通用定时器的周期。下溢,上溢和比较中断标志将产生于各自的匹配发生时。 如果中断没有被屏蔽,则将产生外设中断请求信号。 3 2 3 2 光电编码器测速原理【1 3 1 【1 4 】 光电编码器与转向盘主轴联接,从而使编码器转速与转向盘完全一致。工作原 理是:光电编码器随转向盘旋转,产生与转速成正比的两相( a 相、b 相) 相差9 0 相位 角的正交编码脉冲。如果a 相脉冲比b 相脉冲超前则光电编码器为正转,否则为反 转。a 线用来测量脉冲个数,b 线与a 线配合可测量出转动方向。此可测出电机转速 与转向。光电编码器在低速时输出脉冲数较少,按一般的方法应用很难保证精确 性。为了提高测量精度和分辨率,除选用高分辨的光电编码器外,还可以将编码器 第三章光电跟瞄控制系统设计 的输出脉冲进行多倍频细分,再由计数器对产生的多倍频脉冲信号进行计数。通过 测量时间7 和在时间r 内计数器对被测脉冲信号的计数值,计算后就可以确定转向 盘的转速。 3 2 3 3 常用测速方法【1 3 】【1 4 】 常用的基于编码器的测速方法有三种:“m ”法测速,“t ”法测速以及“m t ” 法测速。在图3 5 中列出了三种常用的基于光电编码器的测速方法,假定时钟频 率为f h z ,光电编码器分辨率为p 脉冲转。 ( b 饿t ( c ) r 法l 图3 5 各种测速法原理图 a ) “m ”法测速 通过测量一段固定的时间间隔内的编码器脉冲数来计算转速。如图3 5 ( a ) 所 示,设在固定时间t 秒内测得的编码器脉冲数为m ,则转速( 单位:转分) 为: :皇咝 ( 3 1 ) p j r 其相对误差为: i 坐l :坐 ( 3 2 ) i lm b ) “t ”法测速 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 通过测量编码器相邻两个脉冲之间的时间间隔来计算转速。如图3 5 ( b ) 所 示,设时钟脉冲计值为 如,则转速( 单位:转分) 为: :婴 ( 3 - 3 ) p m 、 其相对误差为: 阱l 孝卜鲁 ( 3 4 ) c ) “m t ”法测速 “m t ”法是以上两种方法的结合,同时测量一定个数编码器脉冲和产生这些 脉冲所用的时间,在整个速度范围内都有较好的准确性,但是低速时需要较长的 检测时间才能保证结果的准确性,无法满足转速检测系统的快速动态响应指标, 如图3 5 ( c ) 所示,设测量的编码器脉冲数为m ,产生这些脉冲的时钟脉冲数为 厶,则转速( 单位:转分) 为: :坐堕 ( 3 5 ) 尸 埘2 式中,编码器脉冲数m 的值在测量前已经确定,所以其相对误差为: 阱l 孝缸l m , m 、 3 2 3 4 硬件设计 小车直线行走及转弯控制电路如图3 6 所示,按键s 1 ,s 2 分别控制小车启动 和停止命令的发送,开机后d s p 一直读取i o p e l 和i o p e 2 端口的值。当s 1 按下 时,d s p 向小车发送启动命令,此时小车处于准备运动状态,等待速度命令。 调节电位器可使a d i n o o 端口获得肛3 3 v 的输入电压,考虑到实际操作干扰 信号的影响,设置输入电压为1 6 吐1 7 0 v 时,小车仍处于等待速度命令状态,此 区间称为等待电压区间。当输入电压小于1 6 0 v 时,产生小车直线前进命令,速 度与( 1 6 输入电压值) 成正比,当输入电压大于1 7 0 v 时,产生小车直线后退命 令。通过上述方法即可实现小车无线直线行走方向和速率控制命令的生成。 光电编码器旋转方向由输入通道ai n ,bi n 的信号识别,它们之间相差的 电气角度为9 0 0 。系统选用的增量光电编码器,每转一周编码器a ,b 通道分别发 出l 0 0 0 个脉冲,工作电压为+ 5 v ,输出脉冲高电平为+ 4 v ,由于d s p 工作电压仅为 + 3 3 v ,需对编码器输出脉冲先做降压处理,使其输出高电平在d s p 输入电压范围 之内。d s p 上有正交编码脉冲( q e p ) 电路,该电路被使能后,可以在编码和计数 第三章光电跟瞄控制系统设计 引脚c a p l q e p l ,c a p 2 q e p 2 上直接输入经降压处理后的正交编码脉冲,无需增加 图3 6 小车控制电路 额外电路。d s p 实时采集转向器的转动方向,转动速度和角度,进而产生小车对转 向器的随动命令。 3 2 3 5 软件设计 ( a ) 转弯控制策略 由于小车采用两轮独立驱动,当两轮子有差速的时候小车就会转弯。系统中 小车转弯由转向盘控制,小车能够以同样的角速度转动相同的角度。转向盘与光 电编码器同轴相连,当转向盘转动一定角度时带动编码器旋转同样的角度,光电 编码器输出相应数目的两路正交编码脉冲。两路正交输入脉冲两个边沿都被d s p 正交编码脉冲电路计数,因此产生的时钟频率是每个输入序列的4 倍,并把这个 时钟作为d s p 通用定时器2 的输入时钟,转向器每旋转l o ,定时器2 就有儿个 脉冲的计数。使能通用定时器2 的周期和下溢中断,把周期寄存器的值设置为1 1 , 并在每次中断处理程序最后使能以c p u 时钟作为时基的通用定时器l 。当转向器顺 时针转动时,定时器2 增计数,每转1 。d s p 产生周期中断,由于定时器2 采用定 向增减计数模式,在转向器逆时针转动发生下溢中断后,定时器2 也会产生周期 中断,所以在周期中断程序中判断g p t c o n a 寄存器“的计数方向标志位,是减计数 则程序直接返回,是增计数则读取定时器1 的值,定时器1 数值与转向器旋转角 速度成反比,即可确定两轮的速度差,发送命令给左轮伺服控制器,让左轮以高 于右轮的速度行驶,使小车按随转向盘顺时针转动。逆时针转动与顺时针原理相 同,在此不再赘述。 ( b ) 控制程序流程 3 0 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 程序主要由初始化程序和主程序两部分构成。程序流程图如图3 7 所示,系统 上电后先对d s p 系统,a d c 模块进行初始化,开机后d s p 对i o p e l ,1 0 p e 2 端 口扫描,判断小车何时启动,a d n 0 端口输入电压决定小车的直线运动方向和速 度,小车转弯命令发送在中断程序中完成发送。 l 判断转弯方向,角速 l 度,发送相应命令 ( ) 小车行使主程序( b ) 转弯中断程序 图3 7 小车行走控制程序流程图 3 3 多轴电机驱动 为了小车的行走不受限制,主控制台与小车之间没有导线连接,主控制电路 板与各个电机轴之间采用无线数据传输模块以异步串行通信协议进行无线数据通 信。下面将对伺服控制器和无线数据传输模块进行简单的介绍。 3 3 1 伺服控制器简介 车载跟瞄装置采用的位置控制器是e l m o 公司生产的c e l l o 数字伺服驱动器, 型号为c e l a l 5 6 0 。c e l l o 是功能非常强大的伺服驱动器,主要用于永磁同步无刷 电机和直流无刷电机。它支持电流、速度、位置等控制模式,控制电机以恒转矩 第三章光电跟瞄控制系统设计 或恒转速转动,或者控制电机以一定速度转到某一位置,其中位置控制模式又分 为双反馈位置模式和单环位置模式。c e l l o 数字伺服驱动器可以单独使用控制单个 电机,也可以在多轴系统中组成分布式网络使用。c e l l o 数字伺服驱动器具有以下 产品特征: 纯数字化电流控制模式,电流环分辨率为1 2 位,电流环增益自动调整,消 除由于直流电源电压变化带来的扰动。 纯数字化速度控制模式,速度环p i 控制参数可编程设置,采样频率为电流 环采样频率的两倍,可自动调节或手动调节获得速度环的最优的增益和相位 裕度。 位置环p i d 参数可编程设置,采样频率为电流环采样频率的四倍,在高级位 置控制模式下,采用双环( 位置、速度) 控制,并支持p t ( p o s i t i o n t i m e ) 和p v t ( p o s i t i o n v e l o c i t y t i m e ) 运动模式。 可选择r s 2 3 2 串口通信方式或高速c a n o p e n 通信方式,与p c 机或控制器通 信,根据实际应用情况,还可以两种通信方式同时进行。 支持多种传感器反馈,包括增量式编码器、绝对式编码器、数字式霍尔传感 器、模拟信号编码器等。 强大的出错保护功能,包括软件出错处理,高温、高压或欠压、短路保护, 从通信错误中恢复。 c e l l o 数字伺服驱动器的系统模块图“”如图3 8 所示。 c e l l o 数字伺服驱动器与其它设备连接的接口如图3 9 所示。v p + 、p r 分别是 供电电源正负输入端;m l 、m 2 、m 3 为电机的相电源接口;j 1 、j 2 为一般的i o 口; f e e d b a c ka 是主反馈端口,用于连接编码器和霍尔传感器;f e e d b a c kb 是可选的 附加反馈端口;c a n o p e n 和r s 2 3 2 通信接口采用8 针r j 一4 5 口。根据系统需要, 可选择2 4 v 备用电源,用于主电源断电时保存控制参数“”。 c e l l o 数字伺服驱动器是可编程的控制器。它有专门的指令集“”和编程软件 “”。通过r s 2 3 2 或c a n o p e n 通信,可以直接给它发送控制指令,调整控制参数或 控制电机的运行。根据具体应用情况,还可以在p c 机上编程,然后通过r s 2 3 2 下 载到c e l l o 数字伺服驱动器执行。c e l l o 数字伺服驱动器的指令十分丰富,按工能 分类主要有:用于实时控制电机运行的控制指令,如电机的启动、停止;控制参 数设置指令;用户编程指令;错误诊断指令;工作模式转换指令;用于保护系统 的限制指令,如设定最高电流值;运动状态采集指令。 c e l l o 伺服驱动器的r s 2 3 2 通信“”是全双工的,最高波特率可达5 7 6 0 0 b p s 。 除错误代码外,r s 2 3 2 通信均是以a s c i i 码字符形式发送和接收。通过r s 2 3 2 给 c e l l o 发送指令的格式为: 索引 ) ( ) 3 2 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 有些指令是以向量形式表示,不同索引值表示不同参数。结束符为“:”。驱 动器对接收的每个指令均会作出响应,格式为: ( ( 爿参3 劂产燃 图5 1c a n ,c a n o p e n 标准在0 s i 网络模型中的位置框图 5 2 2 对象字典0 d c a n o p e n 的核心概念是设备对象字典( o d :0 b j e c td i c t i o n a r y ) ,在其它现 场总线系统中也使用这种设备描述形式。对象字典是一个有序的对象组;每个对 象采用一个1 6 位的索引值来寻址,为了允许访问数据结构中的单个元素,同时定 群落辩糍 n 弄毒蒜# 掣b 惑磐拶荨肇,w 鼬盛缸c s e l 6 一 钮帮转露 铆 s 撷老置嗽旃“赴饿f 性的棼栩g 张x e “_ q 豫旺目阳口日e 蝌, 摊蚺尊髭痞女壤乏铝采靛步冀¥ - 嚣f i 蛀婚;一曲纾毒拱* 2 知| 畸i ,置卅船嚣社戋7 腾融f ,“;。蝇 m l f f w 建磐篙警钟a 蹲薅嚣 钧 i 0 数鼙l 镪盘彝钳宅f i :,c 蛙 “簿翁堙著n 琏t 链 曲帕并件 ( 觏私d s p 4 0 1 t 硌嘴硌撵簪r 协潼捌鲰l 聊城锋 图5 2 对象字典的通用结构 义了一个8 位的子索引,对象字典的结构参照图5 2 。 c a n 0 p e n 网络中每个节点都有一个对象字典。对象字典包含了描述这个设备和 它的网络行为的所有参数一个节点的对象字典是在电子数据文档中描述或者记 录在纸上。不必要也不需要通过c a n _ b u s “审问”一个节点的对象字典中的所有参 数。 c a n o p e n 通讯子协议描述对象字典的主要形式和对象字典中的通讯子协议区 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 域中的对象,通讯参数。同时描述c a n o p e n 通讯对象。这个子协议适用于所有的 c a n o p e n 设备还有各种设备子协议为各种不同类型设备定义对象字典中的对象。 目前已有5 种不同的设备子协议,并有几种正在发展。设备子协议为对象字典中 的每个对象描述了它的功能,名字、索引和子索引、数据类型,以及这个对象是 必需的还是可选的,这个对象是只读、只写或者可读写等等2 8 2 9 】1 3 0 】【3 。 5 2 3c a n o p e n 通讯 c a n o p e n 通讯模型定义了4 种报文( 通讯对象) 【2 8 】【2 9 】【3 0 】f 3 l 】: 1 管理报文 层管理,网络管理和i d 分配服务:如初始化,配置和网络管理( 包括:节 点保护) 。 服务和协议符合c a l 中的l m t ,n 婀和d b t 服务部分。这些服务都是基于主从 通讯模式:在c a n 网络中,只能有一个l m t ,n m t 或d b t 主节点以及一个或多 个从节点。 2 服务数据对象s d 0 ( s e 九,i c ed a _ c a0 b j e c t ) 通过使用索引和子索引( 在c a n 报文的前几个字节) ,s d o 使客户机能够访问 设备( 服务器) 对象字典中的项( 对象) 。 s d o 通过c a l 中多元域的c m s 对象来实现,允许传送任何长度的数据( 当数据 超过4 个字节时分拆成几个报文) 。 协议是确认服务类型:为每个消息生成一个应答( 一个s d 0 需要两个i d ) 。 s d 0 请求和应答报文总是包含8 个字节( 没有意义的数据长度在第一个字节 中表示,第一个字节携带协议信息) 。s d 0 通讯有较多的协议规定。 3 过程数据对象p d o ( p r o c e s sd a t ao b e c t ) 用来传输实时数据,数据从一个生产者传到一个或多个消费者。数据传送 限制在1 到8 个字节( 例如,一个p d o 可以传输最多6 4 个数字i o 值,或者4 个1 6 位的a d 值) 。 p d 0 通讯没有协议规定。p d 0 数据内容只由它的c a ni d 定义,假定生产者和 消费者知道这个p d o 的数据内容。 每个p d o 在对象字典中用2 个对象描述: p d o 通讯参数:包含哪个c o b i d 将被p d 0 使用,传输类型,禁止时间 和定时器周期。 p d 0 映射参数:包含一个对象字典中对象的列表,这些对象映射到 p d 0 里,包括它们的数据长度( i nb i t s ) 。 p d 0 消息的内容是预定义的( 或者在网络启动时配置的) : 第五章c a n o p e n 协议驱动程序实现 映射应用对象到p d 0 中是在设备对象字典中描述的。如果设备( 生产者和 消费者) 支持可变p d o 映射,那么使用s d 0 报文可以配置p d o 映射参数。 4 预定义报文或者特殊功能对象 同步( s y n c ) ,时间标记对象( 而n es t a m p ) ,紧急事件( e m e 曙e n c y ) ,节点 寿命保护( n o d e l i f eg u a r d i n g ) 。 上面提到的通讯对象类型中有二个对象用于数据传输。它们采用二种不同的 数据传输机制实现: s d o 用来在设备之间传输大的低优先级数据,典型的是用来配置c a n o p e n 网络上的设备。 p d 0 用来传输8 字节或更少数据,没有其它协议预设定( 意味着数据内容已 预先定义) 。 一个c a n o p e n 设备必须支持一定数量的网络管理服务( 管理报文, a d m i l l i s t r a t i v cm e s 鼢g e s ) ,需要至少一个s d o 。每个生产或消费过程数据的设备需 要至少一个p d 0 。所有其它的通讯对象是可选的。 5 3 伺服驱动控制设备子协议d s p 4 0 2 符合d s p 一4 0 2 的伺服控制器的通讯建立在d s 3 0 1 所规定的通信规范的基础上。 设备状态机用于描述设备状态以及驱动器的控制顺序,控制驱动器的启动和停止, 执行某些具体模式的相关命令,当设备出现故障时能够进行设备控制。d s 卜4 0 2 共 定义了6 种运行模式:回原点模式,标准定位模式,插补模式,标准速度模式,标 准力矩模式,变频器调速模式。e l m o 伺服控制器支持回原点,插补,标准定位, 标准速度四种模式( 在对象字典o x 6 5 0 2 中定义) 。这里我们详细介绍标准速度, 标准定位和插补三种模式的具体实现方法【3 2 j 【3 3 】 3 卯。 5 3 1 设备控制 设备控制模块控制伺服驱动器的所有功能。主要包括两部分,如图5 3 所示。 ( 1 ) 设备状态机的控制; ( 2 ) 执行各运行模式相关命令; 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 控制宇o x 6 0 4 0 终端 状态手0 x 4 l 图5 3 设备控制图 驱动器的状态通过写参数控制字( c o n 仃d l w o r d ,i d = o x 6 0 4 0 ) 来进行控制,通 过读状态字( s t a t e w o r d ,i d = o x 6 0 4 1 ) 显示。若为远程节点,直接通过p d o 和s d o 来 进行控制。 5 3 2 状态机 状态机描述了设备的状态和驱动器可能的控制序列。一个状态表示了一个特 定的内部或外部行为。驱动器的状态同样决定哪些命令可以被接受;例如,一个 点对点运动只有在操作使能状态才能被执行。状态机的控制也受外部信号的作用, 例如控制字的写使能由硬件信号“远程”决定,内部故障信号,运行模式也会对 状态机产生影响。 5 3 3 常用控制字 参数控制字( c o n t r 0 1 w o r di d :o x 6 0 4 0 ) 用以产生设备控制命令,它总是映射 在驱动器命令报文的前两个字节。控制字的位定义如图5 4 所示。 制造商定义i 。良宙l 暂件l 蠡售| 署羹怫模武l嚣作使l 墨嫠i 蹇压竞i 上电 m s 8瑚 图5 40 x 6 0 4 0 控制字位定义 其中和运行模式有关的位( 4 ,5 ,6 ,8 ) 的定义如图5 5 。 第五章c a n o p e n 协议驱动程序实现 x 受频器调标准定 标准速标准力回原点 插补梗式 梗趣靠桓瓮 度梗式矩根式 梗式 指令值 俣留 俣留并始 激活插 4 时g 无效 有效 补梗式 s 硷睛止 立刻改变 俣留侯留 僳留僳留 设置 6 砷咖 绝对相对 保留 俱留保留僳留 8 暂停暂停暂停 暂停 暂停 暂停 图5 5 和运行模式有关的位( 4 ,5 ,6 ,8 ) 定义 状态字( s t a t u s w o r di d :0 x 6 0 4 1 ) 用以显示驱动器的当前状态,它总是映射 在驱动器状态报文的前两个字节。 对象字典o x 6 0 6 0 用于选择运行模式,取值如下: 1 :标准定位模式 3 :标准调速模式 7 :插补模式 参数o x 6 0 6 l 用以显示当前运行模式。 5 4c a n o p e n 网络硬件设计 如前所述,c a n o p e n 只是基于c a n 总线的高层协议,与c a n 2 0 b 的区别只是在协 议里定义了l l 位i d 和8 字节数据场的使用,其硬件设计与般c a n 网络没有区别。 处理器选用自带c a n 控制器模块的t m s 3 2 0 l f 2 4 0 7 ad s p ,该控制器是一个1 6 位的外 设模块,完全支持c a n 2 0 b 协议;对象有6 个邮箱,其数据长度为o 一8 个字节;对邮 箱0 ,l 和2 ,3 有局域接收屏蔽寄存器。 主控制器的c a n 通信电路如图5 6 所示。c a n 收发器采用t i 公司生产的 s n 6 5 h v d 2 3 1 芯片。s n 6 5 h v d 2 3 1 芯片3 3 v 供电,睡眠模式下耗电量为4 0 n a ,是t i 公司专为d s p 片内的c a n 控制器设计的c a n 驱动芯片。s n 6 5 h v d 2 3 1 的r s 引脚用于 选择工作模式,在电路设计中,与d s p 的i o p f 3 引脚连接。当i o p f 3 引脚输出低 电平时,s n 6 5 h v d 2 3 1 芯片进入高速运行模式;当1 0 p f 3 引脚输出高电平时, s n 6 5 h v d 2 3 1 芯片进入睡眠模式。在c a n 通信中,c a n 总线两端的c a n h ( 总线高电 平线) 与c a n l ( 总线低电平线) 之间,均必须接入一个一百几百欧姆的电阻, 使c a n h 与c a n l 之间形成差分电压。在c a n 通信电路中,加入了一个1 2 0 欧姆的 电阻。通过设置跳线,可将该电阻接入总线,也可以不使用该电阻1 4 】。 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 图5 6 主控制器的c a n 通信电路 5 5d s p 的c a n 2 0 b 通信程序设计 d s p 的c a n 通信程序模块主要包括两部分:c a n 寄存器初始化和发送程序设计。 c a n 模块的初始化程序如下: v o i dc a n j n i t ( v o i d ) + m c r b = + m c r bo x o c o ;设置相应i o 口为基本功能 + m c r = o x l o o o 正常发送模式 惋l e ( + g s r & o x o o l o = o ) c o m i n u e 当c c e = 1 时,可配置b c r 2 ,b c r l 寄存器 + b c r 2 = 0 x o 0 0 3 ;+ b c r l = 0 x 0 0 2 a ;配置波特率4 0 m 晶振,1 m 波特率 + m c r = + m c r & o x e f f f ;c c r = 0 改变配置结束请求 恤l e ( + g s r & o x 0 0 1 0 ! :o ) c o n t i i l u e ;只有当c e e = 0 时,b c r 2 ,b c r l 寄存器配置 成功 + m d e r = o x 4 0 ;不使能邮箱,邮箱2 设为接收,邮箱3 为发送 + c a ni f r _ o x f 掰_ :清全部中断标志 ) c a n 模块数据的发送首先设置好需要发送的邮箱里的数据,然后改变发送控制 寄存器t c r 的相应发送请求位的值,然后等待发送应答信号的置位。以发送邮箱3 的数据为例,程序如下: v o i dc a ns e n t ( v o i d ) ( 木t c r = 0 x 2 0 :船x 3 请求发送 w h i l e ( ( 木t c r 0 x 2 0 0 0 ) = = o )c o n t i n u e ;等待发送应答 灯c r = o x 2 0 0 0 :清t a 3 和m i f 3 标志位 第五章c a n o p e n 协议驱动程序实现 5 6c a n o p e n 协议实现验证 上面5 5 节中所给出的d s p 程序完成了对c a n 模块的初始化,并且可以将8 字节数据正确的发送到c a n 网络上。我们知道,c a n o p e n 协议只是定义了1 1 位标 识符和8 字节数据场的分配,实现了c a n 2 o b 底层协议之后剩下的工作就是对 c a n o p e n 协议的解析,即按照c a n o p e n 协议正确使用标识符和数据场。下面我们分 别对d s p 一4 0 2 协议中规定的标准速度模式,标准定位模式和插补模式的实现进行 详细讲述。 5 6 1 验证硬件平台搭建 实现c a n o p e n 协议的硬件实物平台如图5 7 所示,主节点由d s p 控制板和 u s b c a n 接口卡组成,从节点为e l m o 伺服控制器,直流无刷电机,测试软件为 z l g c a n t e s t 软件。u s b c a n 接口卡和z l g c a n t e s t 软件为周立功单片机公司开发的 用于c a n 总线设备开发的调试工具,支持c a n 2 0 b 协议 由于测试软件可以方便的看到伺服控制器的c a n o p e n 接口反馈回来的数据,因 此先把c a n 卡作为主站,给伺服控制器发送命令,根据控制器反馈回来的数据判断 命令的发送正确与否,调试完成后把相应的数据发送流程和格式交给d s p 的c a n 模 块完成即可由于调试工具只支持c a n 2 0 b 协议,在调试中,c o b i d 和数据场的数据 内容,数据格式的确定是实现的关键和难点,即对c a n o p e n 协议的解析是否正确 5 6 2 主,从站初始化 图5 7 验证硬件平台 主,从站初始化主要包括主,从站的波特率设置,节点号n o d e - i d 的设置以 及标识符屏蔽位的设置。 某光电跟踪控制系统中d s p 与c a n 总线技术的应用d o c 对于主站,由于设计的系统波特率为1 m ,因此将c a n 接口卡的两个定时器 t i m i n 9 0 和t i m i n 9 1 分别设置为:0 x o o 和x 1 4 ;同时主站需要接收来自伺服控制器 的数据,因此将验收码设置为0 x 0 0 0 0 ,将屏蔽码设置为0 x f f f f ,即可以接收c a n 总 线上的所有数据。 对于从站,主要是设置其波特率和节点号n o d e i d 。c a n o d e n 专有个子协议 用来描述怎样去通过网络设置节点地址和波特率,就是c 认d s p 3 0 5 ,叫l s s 协 议,属于主从式服务,类似于n m t 的方式,占用2 0 2 l ( f o rm a s t e r ) 和2 0 2 0 ( f o rs l a v e ) 两个标识符。c a n o p e n 网络中同时只能有一个节点能提供l s s m a s t e r 服务,并且 该节点同时也必须是n m tm a s t e r 。网络上的其他节点都提供l s ss l a v e 服务【3 4 1 。 这种设置方法比较麻烦,同时e u o 伺服控制器提供了另外一种配置方法。通过 伺服控制器的r s 2 3 2 接口,给控制器发送命令,顺序如下: p p 1 3 】= x ;x 的范围为1 1 2 7 ,即将控制器的节点号n o d e i d 配置为x ; p p 1 4 】- y ;胛的范围为o 8 ,即将控制器的波特率配置为相应数值,如当y = o 时,波特率为l m ,具体对应关系可参照控制器操作手册; s v ;保存命令,即将之前的设置存储

温馨提示

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

评论

0/150

提交评论