自动光源跟踪器的设计(编辑修改稿)内容摘要:

据保存变得非常的简单。 ( 12)采用双排直插式,布线更方便;( 13)重新优化 EMI/EMC,增强抗干扰能力, Runing极其稳定;( 14) PGB采用加厚镀金工艺和焊盘阻焊技术,抗氧化能力强;( 15)采用回流焊工艺,相对手工焊接质量更可靠;( 16)板上开辟一块白色的注释区,方便用做标记。 ( 1) MC9S12XS128单片机 PWM模块 PWM 调制波有 8个输出通道,每一个输出通道都可以独立的进行输出。 每一个输出通道都有一个精确的计数器(计算脉冲的个数),一个周期控制寄存器和两个可供选择的时钟源。 每一个 PWM 输出通道都能调制出占空比从 0— 100%变化的波形。 PWM 的主要特点有: 8个独立的输出通道,并且通过编程可控制其输出波形的周期。 PWM 输出使能都可以由编程来控制。 输出波形的翻转控制可以通过编程来实现。 当通道 关闭或 PWM 计数器为 0 时,改变周期和脉宽才起作用。 16字节的通道协议。 4个时钟源可供选择( A、 SA、 B、 SB),他们提供了一个宽范围的时钟频率。 ( 2) MC9S12XS128单片机 A/D转换模块 陕西理工学院毕业设计 第 7 页 共 47 页 A/D模块功能结构 如 图 : 图 A/D模块功能结构图 图中所示的是 A/D模块的功能结构,这个功能模块被虚线划分成为图示所示 的虚线所隔离的二个部分 :IP总线接口、转换模式控制 /寄存器列表,自定义模拟量。 IP总线接口负责该模块与总线的连接,实现 A/D模块和通用 I/O的目的,还起到分频的作用; 转换模式控制寄存器列表中有控制该模块的所有的寄存器,执行左右对齐运行和连续扫描。 自定义模拟量负责实现模拟量到数字量的转换。 包括了执行一次简单转换所需的模拟量和数字量。 ( 3) MC9S12XS128单片机 PIT模块 PIT模块为 MC9S12XS128单片机 定时器模块,具体结构图如图。 图 PIT模块功能结 构图 陕西理工学院毕业设计 第 8 页 共 47 页 基于单片机的舵机控制方法具有简单、精度高、成本低、体积小的特点,并可根据不同的舵机数量加以灵活应用。 在机器人机电控制系统中,舵机控制效果是性能的重要影响因素。 舵机可以在微机电系统和航模中作为基本的输出执行机构,其简单的控制和输出使得单片机系统非常容易与之接口。 本系统中舵机的主要作用是调整传感器的位置,指向光源。 我们选的是两相混合式步进电机,型号是 MG995,扭矩: 13kg,使用温度: 3060摄氏度,死区设定: 4微秒,工作电压: ,重量 62g,外形尺寸( 40*20*) mm。 图 图 舵机信号线示意图 图 舵机是一种位置伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。 其工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。 它内部有一个基准电路,产生周期为 20ms,宽度为 ,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。 最后,电压差的正负输出到电机驱动芯片决定电机的正反转。 当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为 0,电机停止转动。 舵机的控制信号是 PWM 信 号,利用占空比的变化改变舵机的位置。 图。 图 舵机转角图 陕西理工学院毕业设计 第 9 页 共 47 页 光敏电阻又称 光导管 ,常用的制作材料为 硫化镉 ,另外还有硒、硫化铝、硫化铅和硫化铋等材料。 这些制作材料具有在特定 波长 的光照射下,其阻值迅速减小的特性。 这是由于光照产生的载流子都参与导电,在外加电场的作用下作漂移运动,电子奔向 电源 的正极,空穴奔向电源的负极,从而使 光敏电阻器 的阻值迅速下降。 因为传感器检测到的信号是比较微弱的,单片机不好处理,为了使单片机更好更方便的处理检测到的微弱信号,我们需要将信号 放大然后送给单片机处理。 在本系统中我们选择的是信号放大器LM324。 LM324是四运放集成电路,它采用 14 脚双列直插塑料封装,外形如图所示。 它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。 每一组运算放大器可用图 所示的符号来表示,它有 5个引出脚,其中“ +”、“ ”为两个信号输入端,“ V+”、“ V”为正、 负电源端,“ Vo”为输出端。 两个信号输入端中, Vi( )为反相输入端,表示运放输出端 Vo的信号与该输入端的相位相反; Vi+( +)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。 LM324的引脚排列见图。 图 运算放大器 图 LM324 引脚图 由于 LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等优点,因此被广泛应用在各种电路中。 ( 1) 电源转换电路设计 本系统中用的电压是 5V。 所以我们用下面的 转换电路为系统各元件提供电源。 电路图如下图 所示。 图 电源转换电路 ( 2) 信号检测电路设计 光敏电阻采集到光信号后,使整个电路导通,再通过运算放大器 LM324将微弱的电流信号放大,陕西理工学院毕业设计 第 10 页 共 47 页 从而使单片机 MC9S12XS128更好的处理信号。 电路图如下图 : 图 信号采集电 路 ( 3) 系统原理图 光照强度采集电路由光敏电阻传感器和 S12 单片机最小系统等组成,光敏电阻将光照强度信号转换为电压信号并送入 S12单片机的 A/D 转换模块中进行转换,经转换后的模拟电压信号可变为数字信号 ,然后将转换后的数字信号进行处理。 最终使传感器模块跟踪指向光源方向,达到光源跟踪的效果。 原理图见附录 A,单片机最小系统板 PCB原理图见附录 D。 陕西理工学院毕业设计 第 11 页 共 47 页 4. 系统软件设计 本系统利用 MC9S12XS128的 PIT 定时器模块,定时 5ms采样一次传感器信号,将采样结果存入数组,十次采样,也就是 50ms后,再将数组内数据进行分析处理,多次采样有助于提高系统的抗干扰能力,降低甚至消除系统误差、错误的出现。 具体滤波方法如下: ( 1) 将四个传感器经一个采样周期( 50ms)所采集的四个数组内的值分别进行排序; ( 2) 将排序结果取其最小的三个数据,最大的三个数据,保留中间的四个数据进行后续运算; ( 3) 将保留下的四个数据进行累加,其结果用于后续运算。 ( 4) 由于传感器精度的限制,直接将以上所得的值运算误差很大,但每个传感器的变化率却十分的接近,因此采用相连续的两次以上所得值相减后的差,也就是变化量进行真正的运算; 根据传感器的排布(四个传感器排布见附录 B),易得当上面两个传感器的变化量之和大于下面两个传感器的变化量之和时,光源位于传感器上方,传感器应向上移动,当下面两个传感器的变化量之和大于下面两个传感器的变化量之和时 ,光源位于传感器下方,传感器应向下移动。 同理,当左边两个传感器的变化量之和大于右边两个传感器的变化量之和时,光源位于传感器左边,传感器应向左移动,当右边两个传感器的变化量之和大于左边两个传感器的变化量之和时,光源位于传感器右方,传感器应向右移动。 当四个传感器测得的变化量之和大于某一个值时,说明光源正在远离传感器,这时应该使传感器趋向光源正向运动,同理,当四个传感器测得的变化量之和小于某一个值时,说明光源正在靠近传感器,这时应该使传感器背离光源运动。 流程图如图。 系统首先对各种设备进行初始化,然后 通过传感器模块采集现场光强,送入 S12 单片机 A/D 转换模块,经加权、滤波算法运算后,将结果送入主程序参与相关运算,最后将运算结果通过四路十六位 PWM 模块输出,控制四台舵机的转向,从而达到使传感器模块始终趋向于光源的目的。 参数设定完毕之后打开中断,最后循环执行位置控制程序。 初始化 包括锁相环初始化, I/O端口初始化,四路 PWM初始化, PIT定时器初始化, A/D模块初始化, 锁相环初始化为 64MHz; PORTB口因硬件接了八个 LED灯,所以用 PORTB口显示传感器的具体状态; PWM模块初始化 为四路两两级联的十六位精度的 PWM输出; PIT初始化为 5ms中断,传感器信号的采集在中断中进行; A/D初始化为四路十二位精度,用以检测光敏电阻的信号; PID模块由软件构成,运用 PD增量式对传感器信号进行计算并以 PWM波的形式输出,用以控制四台舵机的动作。 模块 MCU的支撑电路一般需要外部时钟来给 MCU提供时钟信号,而外部时钟的频率可能偏低,为了 使系统更加快速稳定运行,需要提升系统所需要的时钟频率。 这就得用到锁相环了。 例如 MCU用的外部晶振是 16M 的无源晶振,则可以通过锁相环 PLL 把 系统时钟倍频到 64M,从而给系统提供更高的时钟信号,提高程序的运行速度。 51单片机, AVR单片机内部没有锁相环电路,其系统时钟直接由外部晶振提供。 而 MC9S12XS128 单片机内部集成了锁相环电路,其系统时钟既可由外部晶振直接提供,也可以通过锁相环倍频后提供,当然,还有由 XS128 内部的时钟电路来提供(当其它来源提供的系统时钟不稳定时,内部时钟电路就起作用了,也就是自时钟模式)。 在程序中配置锁相环的步骤如下: ( 1) 禁止总中断; ( 2) 寄存器 CLKSEL的第七位置 0,即 CLKSEL_PLLSEL=0。 选择时钟源为外部晶振 OSCCLK,在PLL程序执行前,内部总线频率为 OSCCLK/2。 CLKSEL_PLLSEL=0时,系统时钟由外部晶振直接提供,系统内部总线频率 =OSCCLK/2( OSCCLK为外部晶振频率)。 CLKSEL_PLLSEL=1时,系统时钟由锁相环提供,此时系统内部总线频率 =PLLCLK/2 ( PLLCLK为锁相环倍 频后的频率)。 陕西理工学院毕业设计 第 12 页 共 47 页 ( 3) 禁止锁相环 PLL,即 PLLCTL_PLLON=0。 当 PLLCTL_PLLON=0 时,关闭 PLL 电路。 当PLLCTL_PLLON=1时,打开 PLL电路。 ( 4) 根据想要的时钟频率设置 SYNR和 REFDV两个寄存器。 SYNR和 REFDV两个寄存器专用于锁相环时钟 PLLCLK的频率计算,计算公式是 PLLCLK=2*OSCCLK*(SYNR+1)/(REFDV+1),其中, PLLCLK为 PLL模块输出的时钟频率; OSCCLK为晶振频率; SYNR、 REFDV分别为寄存器 SYNR、 REFDV中的值。 这两个寄存器只有在 PLLSEL=0时才能够写入(这里就是第二步的设置原因所在了)。 ( 5) 打开 PLL,即 PLLCTL_PLLON=1。 ( 6) CRGFLG_LOCK位, 确定 PLL是否稳定。 当锁相环 PLL电路输出的频率达到目标频率的足够小的误差范围内时, LOCK位置 1,此时说明 PLLCLK已经稳定,可以作为系统的时钟了。 该位在正常情况下为只读位。 ( 7) PLLCLK稳定后,允许锁相环时钟源 PLLCLK为系统提供时钟,即 CLKSEL_PLLSEL=1。 到这里,锁相环的设置就完毕了。 本设计中锁相环初始化为 64MHz,此频率足以应付本设计中所需的信号采集,数据处理等。 因本系统为光源跟踪所用,只需输出相应的 PWM 脉冲,输入相应的模拟信号,并且所使用的MC9S12XS128 最小系统板上集成有 PORTB 口( 8 位) 8 个指示灯, 故在节约系统资源的前提下,只设置了单片机的 PORTB口用来显示光源跟踪装置的相关状态。 PWM 调制波有 8个输出通道,每一个输出通道都可以独立的进行输出。 每一个输出通道都有一个精确的计数器(计算脉冲的个数),一个周期控制寄存器和两个可供选择的时钟源。 每一个 PWM 输出通道都能调制出占空比从 0— 100%变化的波形。 PWM 的主要特点有: (1)它有 8个独立的输出通道,并且通过编程可控制其输出波形的周期。 (2)每一个输出通道都有一个精确的计数器。 (3)每一个通道的 PWM 输出使能都可以由编程来控制。 (4)PWM 输出波形的翻转控制可以通过编程来实现。 (5)周期和脉宽可以被双缓冲。 当通道关闭或 PWM 计数器为 0 时,改变周期和脉宽才起作用。 (6)8字节或 16字节的通道协议。 (7)有 4个时钟源可供选择( A、 SA、 B、 SB),他们提供了一个宽范围的时钟频率。 (8)通过编程可以实现希望的时钟周期。 (9)具有遇到紧急情况关闭程序的功能。 (10)每一个通道都可以通过编程实现左对齐输出还是居中对齐输出。 本 设计中用到四路两两级联的十六位 PWM 波,分别一一控制四个舵机的动作。 根据设计思路, A/D 采样周期设定为 5ms,采样十次为一个循环,进行一次输出,这就需要对PIT定时器模块的掌握和使用。 陕西理工学院毕业。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。