毕业论文-基于霍尔传感器的电机测速装置的设计与实现内容摘要:

图 主程序流程图 开始 LCD显示缓存初始化 时钟寄存器初始化 定时器中断初始化 LCD显示初始化 调用数据处理成程序 调用显示子程序 调用按键处理程序 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 15 电机转速测量程序设计 设计中考虑到电机的工作环境一般比较恶劣,因此除了硬件外,从程序上除了要更高的精确度也需要进行更多的抗干扰设计,从而实现软件的大范围检错、纠错或丢弃错误等。 在程序的设计过程中,对严重不符合要求的测量数据(如大于 80 转 /秒 对应的数据)进行了丢弃处理,而对于正常范 围内的数据错 误采用了采 0 取 2 求平均的算法。 实验表明,此方法降低了系统采集转速中出现的错误。 对于转速的测量方法,是通过速度脉冲信号下降沿触发单片机的外中断,中断服务子程序在某一个脉冲的下降沿开启定时器记时,然后在下一个下降沿关闭定时器,通过对定时器数据进行运算处理可以得到信号周期进而得到速度值。 其程序框图如图。 可以看出,此方法下的采样周期是随转速变化的,转速越高采样越快。 通过这种非均匀的速度采样方式可以使电机在高速情况下,实现高速度高 精度的控制。 按键控制程序设计 键盘程序设计的任务是赋予各按键相应的功能 ,完成速度设定值的输入和向PWM 控制器的发送。 2 只按键一只用来位循环选择,告诉单片机要调整 电机的转速快慢。 二 只按键分别是减 加 1减。 在没有位选择的情况下对设定值整体 保持不变 ;在有 按键 选择的情况下仅对相应位进行减 加 1,并且当按着不释放按键时 电机还是保持原有的速度 ,同时允 永久保持。 所以通过按键改变 PWM 值,从而实现设定控制。 程序框 图如图。 为“ 0” 为 “ 1” 进入中断 检测中断标志 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 16 图 0服务子程序框图 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 17 键盘服务子程序 位选键按下否。 加 1键按下否。 减 1键按下否。 位选循环右移 调用加 1子程序 调用减 1子程序 否 否 否 否 发送键按下否。 是 是 是 键值处理、保存、显示 向 pwm控制器发送 返回 图 :键盘电路程序 框图 LCD 显示程序设计 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 18 LCD 的详细使用过程可参阅对应型号的使用手册。 仅在本小节强调以下内容: LCD 使用的关键是根据显示需要正确地对其进行初始化设置,而一般情况下不用考虑如何向它读写指令或数据,因为制造厂商所给的使用资料里就附有驱动程序,如果没有也可以从网上搜索下载得到。 然而我们必须清楚那些初始化设置之间的关系,以及它是如何利用设置读取、显示数据字符的,不然就会发生一些不可预料的错误。 因此,熟读 LCD 驱动芯片使用手册也是一个关键环节。 LCD初始化子程序 LCD显示程序流程图框 图 LCD显示初程序流程图框和 LCD初始化子程序 通常 LCD 的初始化包括复位设置、清除显示、地址归位、显示开关、游标设置、读写地址设置、反白选择以及睡眠模式等等。 实际中根据需要,正确、灵活地修改这些设置可以达到较为满意的显示效果。 LCD 中所有汉字、数字和字符都可以通过它的 ASCII 码来访问显示;图象的显示是通过将相关软件(提取汉字、图象点阵数据程序)产生的数据按照 LCD 手册的要求完成响应设置后写入即可。 开始 LCD初始化 延时 设置第一 行显示位置 显示第 一行内容 设置第二 行显示位置 显示第 二行内容 系统延时 设定使用 基本指令集 清屏,地址 指针归位 设定游标的移动方向及指定显示的移位 返回 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 19 由于本设计 中没有使用到图形显示,所以没有详述。 对于系统使用的汉字、字符和数据的 LCD 显示初始化程序和写数据程序框图见图 PWM 信号的单片机程序实现 51 系列单片机提供了非常丰富的资源,它除了拥有 4 个通用并口和 1 个串口外,还有外部中断和内部定时器等。 而且,不同的型号还集成有不同的功能,比如 STC89C52的 ROM 都比较大 ,这样存储空间可以满足一般的编程需要,而不必去构建程序存储器,既提高了工作效率和系统的稳定性,又降低了生产成本。 基于 STC89C52单片机的 PWM 软件实现的重要硬件支撑是该单 片机内部的定时器。 在 STC89C522内实现 PWM 的基本过程:首先选定脉冲的频率 T,然后根据控制信号的变化范围,这里假设是 (0~ 5V),则可以求出 t时刻通过控制信号 V(t)的对应脉冲的正、负脉冲持续时间。 这两个时间长度在单片机里是通过给定时器赋相应的初值而得,即定时器获得这样的定时初值后就在机器周期的同步下,从这个初值加 2 计数,定时器满时则产生相应时间长度的溢出中断,再利用这个中断所响应的服务程序去控制单片机某一引脚相应的正、负电平极性的持续时间。 如果上述过程连续进行,就可在这个引脚获得宽度随控制信号 V(t)大小变化的PWM 方波信号。 其程序框图见图 图 :产生 PWM控制信号程序框图 第四章本系统的实现与调试 定时器 0中断 将 PWM输出端置高电平“ 1” 装入 50ms初值 设定时器 1中断优先级最高 中断返回 定时器 1中断 设定时器 0中断优先级最高 将 PWM输出端清零 装入 PWM信号初值 INIT 中断返回 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 20 制作 PCB 过程与步骤 制作本设计的 PCB 电路版,考虑到市场经济条件,再加上制作的成本,制作的工艺,所以选择制作覆铜的单层 PCB 版,这样简单,经济实惠。 而且制作的效果非常好。 第一步:你得准备好单层的铜板和三氯化铁 FeCl3(这两个市场上有买 ),你还得有一喷墨(碳)打印机,以及一 台 PCB 版制作转印机。 第 二 步 : 在 EDA 工 具 中 把 EDAPCB/PCBjishu/ target=_blank class=infotextkeyPCB 图画好(例如 PROTEL DXP)然后用喷墨打印机打印在油性 的纸上。 第三步:把打印好的图纸贴在铜板上,然后用 PCB版制作转印机,进行压缩加热,大概 5 分钟左右,这时碳就附在了铜板上了。 第四步:然后把铜板拿到三氯化铁 FeCl3 溶液里面腐蚀, 三氯化铁 FeCl3的溶液最好是热的,最好的用开水熔化三氯化铁 FeCl3,然后把铜板放进三氯化铁 FeCl3 溶液里面腐蚀。 大概 20 分钟后,将铜板拿起来,用水冲干净,晾干。 第五 步:将电路板以CNC钻孔机钻出层间电路的导通孔道及焊接零件的固定孔。 钻孔时用插梢透过先前钻出的靶孔将电路板固定于钻孔机床台上,同时加上平整的下垫板(酚醛树酯板或木浆板)与上盖板(铝板)以减少钻孔毛头的发生。 根据以上步骤我们单层 PCB的制作就可以完成了如附图 2。 焊接硬件电路 因为 PCB 版已经制作好了,所以只需要将电子器件按照电路图 PCB 版 的电子器件 (详见电子器件附录) 排布焊接,就可以了,所以过程也十分简单。 但是焊接的过程中需要注意一些问题:当我们把焊锡融化道烙铁头上时,焊锡丝重的焊剂伏在焊 料表面,由于烙铁头温度一般都再 250℃ - 350℃ 以上,当烙铁放道焊点上之前,松香焊剂将不断挥发,而当烙铁放到焊点上时由于焊件温度低,加热还需一段时间,在此期间焊剂很可能挥发大半甚至完全挥发,因而在润湿过程中由于缺少焊剂而润湿不良。 同时由于焊料和焊件温度差很多,结合层广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 21 不容易形成,很难避免虚焊。 更由于焊剂的保护作用丧生后焊料容易氧化,质量得不到保证就在所难免了。 所以焊接的时候我们要特别注意下细节,不然的话容易出错。 硬件部分测试 硬件调试时先分步调试硬件中各个功能模块,调试成功后再进行统调。 安装固定电机 和霍尔传感器时,粘贴磁钢需注意,霍尔传感器对磁场方向敏感,粘贴之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。 霍尔传感器的测试信号调试:霍尔传感器探头要对准转盘上的磁钢位置,安装距离要在 2CM 以内才可灵敏的感应磁场变化。 在磁场增强时霍尔传感器输出低电平,指示灯亮;磁场减弱时输出高电平,指示灯熄灭。 当电机转动时,感应电压指示灯高频闪烁,所以视觉上指示灯不会有多大的闪烁感。 当给霍尔元件SS49E 型霍尔传感器施加 25V 电压时其输出端可以输出 5V 的感应电压。 输出幅值为 5V 的矩形脉冲信号。 键 盘控制调试:键盘是实现人机对话的必要设备,用户可用键盘向计算机输入数据或命令。 本系统采用独立键盘接口,独立式按键是指直接用 I/O 口线构成单个的按键电路。 每一个独立式按键单独占用一根 I/O 口线。 其接口电路如图 所示。 独立式按键接口电路配置灵活,软件结构简单。 但每个按键要占用一根 I/O 口线,适用于按键数量少的键盘。 电路中,按键输入低电平有效。 按键未按时没有有上拉电阻保证此时输入为低电平。 图 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 22 LCD1602 显示调试:请先确保 option/debugger 选择的是 FET Debugger。 然后检查 LCD 接口电路,有时候接触不良也会不亮的。 我遇到一些 LCD 不亮的板子,大部分都是焊接不良才导致不亮的。 检查下程序里 watchdog 的设置,要及时清除 watchdog 的。 最后显示出结果如 LCD1602正常显示 L298N 驱动电路调试:在焊接硬件电路时需细心排除元器件和焊接等方面可能出现的故障,元器件的安装位置出错或引脚插错都可能导致电路短路或实现不了电路应有的功能,甚至烧坏元器件。 为方便调试,用信号发生器产生的 10KHz的正弦信号送给 L298N 驱动电路,调试直到 OUT1和 OUT2 可以输出矩形脉冲信号为止,该驱动电路调试即可完成。 通过以上的电路功能调试,就可以确定电路设计的问题 所在可以及时进行更改。 达到最佳的设计效果。 软件部分调试 在进行软件编程调试时需要用到单片机的集成开发环境 Keil uVision3 软件,编程时极易出现误输入或其他的一些语法错误,最重要的还有一些模块无语法错误却达不到预期的功能,都要经过调试才能排除。 Keil uVision3 软件具有很强大的编程调试功能,能够模拟仿真实际单片机的端口和内部功能部件的状态值。 该软件中有硬件调试和软件调试功能,可以观察单片机内存单元对应的运行值,可以显示单片机端口、中断、定时器 定时器 2还有串口对应的运行值。 可以 单步调试也可以模块调试,最好的是可以对你所怀疑的语句模块设置断点。 广 东白云学院 基于霍尔传感器的电机测速装置的设计 与 实现 23 Keil uVision3 具有的强大的编译调试功极大地方便了对软件部分的调试。 在具体调试过程中,系统将各功能模块如数据处理程序、按键程序设计、中断服务子程序、 LCD 显示程序分别分开进行调试,最后进行主程序的整体调试。 编译无误后生成目标代码 .HEX 文件 一般为了更好的观察仿真的效果及各部分的功能等问题,我们学生大多数采用 ISIS 7 Professional 软件进行仿真,利用 ISIS 7 Professional 软件画出原理图(附图 3),可以 形象的显示出各部分的运行情况,很清楚各部分参数的多少。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。