基于STC89C52单片机的点焊机控制系统的软件设计.doc_第1页
基于STC89C52单片机的点焊机控制系统的软件设计.doc_第2页
基于STC89C52单片机的点焊机控制系统的软件设计.doc_第3页
基于STC89C52单片机的点焊机控制系统的软件设计.doc_第4页
基于STC89C52单片机的点焊机控制系统的软件设计.doc_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

核准通过 归档资料 未经允许 请勿外传 毕业设计题目 基于 stc89c52 单片机的点焊机控制系统的软件设计 一 毕业论文 设计 的主要内容及要求 1 主要内容 1 收集和查阅点焊机的相关资料 2 掌握现有点焊机系统的基本原理及进行优劣分析 3 明确点焊机系统所要达到的要求和实现方法 4 掌握 51 单片机的基本原理与 adc0832 模数转换芯片使用 5 画出点焊机系统的总体设计框图 6 画出电流 电压 工件准备信号 等程序流程图 7 编写点焊机系统各部分程序 8 指标要求 设计终点监测点焊机系统 实现人工设定 自动完成工件点 焊 2 要求 1 认真分析设计课题 了解设计任务查阅相关资料 按要求完成开题报告 2 遵守院相关规定和纪律 服从指导老师和实验室工作人员安排做好毕业 实 习和具体实验 3 保质保量按时完成论文撰写工作应完成的成果 9jwkffwvg tym jg 定义档位 tmod 0 x01 定时器设置 0 01ms in 12m crystal th0 65536 10 256 tl0 65536 10 256 定时 0 01ms ie 0 x82 打开中断 tr0 1 getdata 0 cycle 256 时间可以调整 这个是 256 步调整 周期 2 56ms 8 位 pwm 就 是 256 步 pwm on 0 while input 0 pwm on getdata 将 adc 转换后的值输入到占空比 getdata adc0832 0 if getdata0 x2d 当电流较大或者较小时 及时的调整矫 正 pwm on 0 break 18 5 3 25 3 2 adc0832adc0832 转换程序转换程序 adc0832 时序图如图 6 所示 图图 6 6 adc0832adc0832 时序图时序图 unsigned int adc0832 unsigned char channel ad 转换 返回结果 uchar i 0 uchar j uint dat 0 uchar ndat 0 if channel 0 channel 2 if channel 1 channel 3 addi 1 nop nop adcs 0 拉低 cs 端 nop nop adclk 1 拉高 clk 端 nop nop adclk 0 拉低 clk 端 形成下降沿 1 19 nop nop adclk 1 拉高 clk 端 addi channel nop nop adclk 0 拉低 clk 端 形成下降沿 2 nop nop adclk 1 拉高 clk 端 addi channel 1 nop nop adclk 0 拉低 clk 端 形成下降沿 3 addi 1 控制命令结束 nop nop dat 0 for i 0 i 8 i dat addo 收数据 adclk 1 nop nop adclk 0 形成一次时钟脉冲 nop nop dat 1 if i 7 dat addo 20 for i 0 i 8 i j 0 j j addo 收数据 adclk 1 nop nop adclk 0 形成一次时钟脉冲 nop nop j j 7 ndat ndat j if i 1 adcs 1 拉低 cs 端 adclk 0 拉低 clk 端 addo 1 拉高数据端 回到初始状态 dat 8 dat ndat return dat 返回数值 21 5 3 35 3 3 定时器中断程序定时器中断程序 时间定时器到设定的中断时间内 将进行中断处理程序的设置 此程序将 将输出所需占空比的 pwm 波形 中断程序流程图如图 7 所示 断断点点保保护护 进进入入中中断断 计计数数到到设设 定定值值 y y n n 变变为为低低电电平平 保保持持高高电电平平 n n 计计数数值值加加1 1 计计数数到到达达 设设定定周周 期期 变变为为高高电电平平 y y 中中断断返返回回 n n 图图7 7 中断程序流程图中断程序流程图 定时器中断函数 void tim void interrupt 1 using 1 static unsigned char count 0 设定时器时间值 th0 65536 10 256 22 tl0 65536 10 256 定时 0 01ms if count pwm on pwm 0 count if count cycle count 0 if pwm on 1 如果左右时间是 0 保持原来状 态 pwm 1 6 总总 结结 本课题以点焊机为研究对象 以 stc89c52 单片机的点焊机为控制器 结合 霍尔元件 acs758 采样 adc0832 模数转换芯片设计了一款新型的点焊机系统软 件 该系统软件功能 能够提前判断焊接前焊件是否被压紧 控制焊接时的电 23 流范围使之不会由于电网波动而变化以至于影响焊接质量 并能在一次焊接结 束时再次检查件 判断是否有虚焊并做出相应的反应 本课题采用霍尔元件 acs758 采样 adc0832 芯片完成电池的电压 电流 的采集 通过单总线通讯方式与单片机进行通讯 由单片机完成数据的处理和 比较 并将各种数据及处理结果来输出 pwm 由于大量的数据处理工作由单 片机的软件完成 因而降低了系统硬件的复杂程度 软件设计采用 51 单片机 c 语言编程 实行模块化设计 增加了程序的可读性和移植性 主程序主要完成系统的初始化 定时器数字值设置以及数据采样 计算和 子程序的调用 主程序访问 adc0832 采集电压 计算出变压器副边电流 数 据采集结束后进行运算处理 同时当电压超出范围时 进入停机状态 经试验 验证 软件运行可靠 满足所需的功能要求 参考文献参考文献 1 中国机械网 中国焊接行业的发展现状及未来展望 ol 2005 10 2 殷树言 邵青莲 coz 焊接技术及应用 m 哈尔滨 哈尔滨工业大学出版社 1989 5 24 3 姚河清 陈亚政 孟庆芹 现代焊接技术发展的现状及展望 j 南京 河海大学 2004 9 124 134 4 林三宝 黎明 吴林 计算机在焊接中的应用现状及发展前景 j 焊接 2000 8 23 56 5 杨光 焊接自动化技术的现状及展望 j 现代制造 2004 11 124 145 6 林奕鸿等 机床数字控制技术及其应用 北京 机械工业出版社 1994 8 7 徐宏 计算机数字控制技术 cnc 最新发展动态 m 机械制造 1996 9 8 秦继荣 沈安俊 现代直流伺服控制技术及系统设计 北京 机械工业出版社 1993 9 9 陈维山 赵杰 机电系统计算机控制 哈尔滨 哈尔滨工业大学出版社 1999 2 10 granham t smith cnc machining technology m springerer verlag london limtied 1993 6 11 anthony kushigian cnc dressers improve productivity flexibility m tooling 定义调速端口 unsigned char cycle 定义周期 该数字 x 基准定时时间 如果是 256 则周期 是 256x 0 01ms unsigned char pwm on 定义高电平时间 adc0832 的引脚 sbit adcs p1 0 adc0832 芯片选择 sbit addi p1 2 adc0832 k 输入 sbit addo p1 2 adc0832 k 输出 sbit adclk p1 1 adc0832 时钟信号 uint temp uchar getdata 获取 adc 转换回来的值 延时函数 void delay unsigned int cnt while cnt 26 读 adc0832 函数 采集并返回 unsigned int adc0832 unsigned char channel ad 转换 返回结果 uchar i 0 uchar j uint dat 0 uchar ndat 0 if channel 0 channel 2 if channel 1 channel 3 addi 1 nop nop adcs 0 拉低 cs 端 nop nop adclk 1 拉高 clk 端 nop nop adclk 0 拉低 clk 端 形成下降沿 1 nop nop adclk 1 拉高 clk 端 addi channel nop nop 27 adclk 0 拉低 clk 端 形成下降沿 2 nop nop adclk 1 拉高 clk 端 addi channel 1 nop nop adclk 0 拉低 clk 端 形成下降沿 3 addi 1 控制命令结束 nop nop dat 0 for i 0 i 8 i dat addo 收数据 adclk 1 nop nop adclk 0 形成一次时钟脉冲 nop nop dat 1 if i 7 dat addo for i 0 i 8 i j 0 j j addo 收数据 adclk 1 nop 28 nop adclk 0 形成一次时钟脉冲 nop nop j j 7 ndat ndat j if i 1 adcs 1 拉低 cs 端 adclk 0 拉低 clk 端 addo 1 拉高数据端 回到初始状态 dat 8 dat ndat return dat 返回数值 主函数 main unsigned char pwm num 定义档位 tmod 0 x01 定时器设置 0 01ms in 12m crystal th0 65536 10 256 tl0 65536 10 256 定时 0 01ms ie 0 x82 打开中断 tr0 1 getdata 0 29 cycle 256 时间可以调整 这个是 256 步调整 周期 2 56ms 8 位 pwm 就是 256 步 pwm on 0 while input 0 pwm on getdata getdata adc0832 0 if getdata0 x2d pwm on 0 break 定时器中断函数 void tim void interrupt 1 using 1 static unsigned char count 0 th0 65536 10 256 tl0 65536 10 256 定时 0 01ms if count pwm on pwm 0 count if count cycle count 0 if pwm on 1 如果左右时间是 0 保持原来状态 pwm 1 30 致谢致谢 历时将三个多月的时间终于将这篇论文写完 在论文的写作过程中遇到了 无数的困难和障碍 都在同学和老师的帮助下度过了 在校图书馆查找资料的 时候 图书馆的老师和同学也给我提供了很多方面的支持与帮助 在此向帮助 和指导过我的各位老师表示最衷心的感谢 特别感谢廖

温馨提示

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

评论

0/150

提交评论