大电流母线铆接机控制设计说明书_第1页
大电流母线铆接机控制设计说明书_第2页
大电流母线铆接机控制设计说明书_第3页
大电流母线铆接机控制设计说明书_第4页
免费预览已结束,剩余31页可下载查看

下载本文档

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

文档简介

1、百度文库大电流母线铆接设备(控制)设计说明书The Introduction of Design Large Current Bus BarRiveting Equipment (control)学生姓名学号所在学院班级所在专业机械设计制造及其自动化申请学位学士指导教师职称副指导教师职称答辩时间1目录2Introduction21.32.42.142.243.43.143.243.3103.3.1103.3.2113.3.3113.4124.275.276.281摘 要铆接机是我国目前工业生产中越来越占比重的机器之一。 而随着科技的日新月异,自动化的铆接机也是当前的趋势所在。 本次毕业设计主要

2、是通过设计有半自动和手动工作功能的铆接机, 对各种型号的大电流母线进行铆接, 以解放劳动生产力,提高劳动生产率,满足市场生产的需要。大电流母线铆接设备的设计分为机械部分和控制部分, 本说明书是控制部分的设计说明。 本次毕业设计主要通过控制系统人机界面操作铆接机进行铆接, 设计内容包括铆接功能的验证和检测, 控制器件的选用, 控制系统的硬件构成和程序设计。关键词:铆接机;大电流母线;自动化;控制IntroductionRiveting machine is more and more in Chinas current industrial production accounts for one

3、 of the machines. But with the progress of science and technology, automatic riveting machine is the current trend. This graduation design is mainly through the design with semi-automatic and manual work function of riveting machine, for riveting, various types of large current bus to liberate labor

4、 productivity, improve labor productivity, meet the needs of the market.The design of the large current bus bar riveting machine are classified into two parts, mechanical and control this paper is the design of the control part. This design mainly by testing the function of riveting, riveting machin

5、e control system interface, the design includes the selection of control devices, hardware structure and software design.Key words : riveting machine; Large current bus; Automation; control2大电流母线铆接设备(控制)设计1 绪论大电流母线是指用高导电率的铜()、铝质材料制成的,用以传输,具有汇集和分配电力能力的产品,电站或变电站输送电能用的总导线。通过它,把、或整流器输出的给各个用户或其他。 目前国内的铆接

6、设备发展较为成熟, 铆接机主要靠旋转与压力完成装配,主要应用于需要铆钉(中空铆钉,实心铆钉,空心铆钉等)铆合之场合,常见的有气动,油压,电动和单双头等规格型号。而常见的类型有自动铆钉机和旋铆机。 自动铆接机是采用冷碾铆接的工作原理, 采用铆杆对铆钉进行局部加压, 并绕中心连续摆动直到铆钉成形的铆接设备。 随着机械工艺发展,铆接越来越多的应用在机械的各个方面,作用愈加明显。 铆接机其方便多用,高效易操作的特点越来越为广大的制造商客户所接受。另外, 随着单片机的出现,以其低成本、低功耗、低价格、高的性价比,适应性强,体积小等突出特点,在自动控制方面显示出其特有的魅力。从而,以单片机为智能控制,气动

7、逻辑为中间控制和反馈,机械装置为执行机构的机电气一体化铆接设备应运而生,其前景十分广阔。通过调查发现, 目前国内电器行业的铆接车间, 大部分是通过操作人员的手工操作,机械化程度低、 劳动强度大、 效率低、质量差,不能满足大批量的生产。随着时代的发展,大电流母线的铆接的自动化、 半自动化必须跟上步伐, 以满足市场经济的需要。就个人而言, 希望通过这次毕业设计, 能对未来从事的工作提前进行适应性训练,锻炼自己分析问题,解决问题的能力,提高自己的工作能力。由于个人的能力有限,毕业设计尚有不足之处,恳请老师给予纠正。2 设计目的和任务要求32.1设计目的( 1)通过设计掌握控制系统的硬件电路、软件编辑

8、及程序的设计方法。( 2)了解大电流母线铆接机的工作原理。( 3)掌握和熟悉 C语音编程。2.2任务要求( 1)设计一种可对各种型号大电流母线的半自动铆接设备, 结构合理;( 2)设备对各种型号母线都能铆接;( 3)设备能减少操作人员,提高铆接效率。3 大电流母线铆接机控制的设计3.1根据工艺过程分析控制要求由大电流母线的工艺过程可知,当人工推送大电流母线到滚轮相应位置后,开始启动铆接机执行程序, 其过程为:气缸下降夹紧 铆枪上升 铆接 铆枪下降 气缸松开上升。 气缸和铆枪的下降、上升的动作转换靠行程开关来控制,而气缸的夹紧松开动作的转换是由压力传感器来控制的。铆接机的工作方式分为手动和半自动

9、工作方式。( 1)手动工作方式: 利用按钮对铆接机每一步动作单独进行控制,例如,按“气缸 1 上升”按钮,气缸1 上升。( 2)半自动工作方式:按下“半自动”按钮,铆接机开始自行运转,完成上述的过程,最后回归起始位置。3.2控制器件选用1. JMDM-COM20MR串口控制器根据铆接机的控制要求,编程C 语言程序以达到工作的目的,选取JMDM-COM20MR工业数字量单片机串口控制器,其主要特征和性能参数如下:( 1) I/O :4 路全光电隔离数字量输入、 20 路继电器输出; 输出具有超强负载能力,每路继电器输出最大负载 220V 10A;( 2)继电器工作状态指示灯:每路输出都有一个指示

10、灯,方便观察工作状态;( 3)工作电源:主电源: 12V 或 24V,交流或直流通用;外围驱动电源:DC24V或 DC12V;( 4)主控制芯片: 8 位高性能单片机加高速高稳定 FPGA可编程阵列电路;( 5)程序存储空间: 32 K,(若有特定需要,可扩展为 64K)数据存储空间: 16 K,保存数据,断电数据不丢失;( 6)外形尺寸:外壳: 146mm90mm40mm;内部控制板:245mm102mm40mm;4( 7)图片如下:2. TK-10 压力继电器:气动控制的时候, 需要测量和调节气动回路中的压力, 以检测气缸是否压紧工件,从工厂气源 0.8MPA可知,选取 TK-10 压力继

11、电器即可满足要求, TK-10 压力继电器压力敏感核心采用了高性能的硅压阻式压力充油芯体, 内部的专用集成电路将传感器毫伏信号转换成标准远距离的传输电流信号, 可以直接与计算机接口卡、控制仪表、智能仪表或 PLC等方便相连。其相关性能参数如下:( 1)压差调节范围( Pressure adjustment range): 0.1 0.3MPa;( 2)压力调节范围( Pressure differential adjustment range): 0.4 0.8MPa;( 3)工作介质( Working medium ):空气、油、 Air 、Oil ;( 4)额定电流( Rating Cur

12、rent): 0.5A;( 5)接管螺纹( Connection threads): M121.5( 6)使用寿命( Working life ): 50 万次( 7)图片如下:53. 控制系统人机界面:为了操作方便,采用触摸屏来操控铆接机的工作,由铆接机的尺寸选取WLT-TFT8060-104微软触摸屏,其相应的性能参数如下:( 1)操作系统: Windows CE 5.0( 2)显示区大小: 10.4 寸( 3)分辨率: 800600( 4)通信口: RS232,RS485,USB( 5)电源及功耗: 12/24V DC,8W( 6)图片如下:64. 压紧气缸及液压钳铆接气缸( 1)两个压

13、紧气缸:型号: SC8080-FA,连接形式:前端固定。气缸外形尺寸:长 2839494,管接头 2-G3/8,活塞杆前端:螺纹M201.5 ,螺纹长度 40,扳手方位 22,前安装板:外形尺寸 143 95,板厚 16,过孔位置 119 70、孔径 4- 12,图片如下:( 2)两个铆接钳调整气缸型号: DSNT4050-SDB连接形式:后盖摇摆式,连接底面到销孔中心的距离 40,销孔 10,连接过孔 2- 9,孔距 25,板厚 4。气缸外形尺寸:长200 45,管接头 2-G1/8,活塞杆前端:螺纹 M141.5 ,螺纹长度 23,扳手方位 14 图片如下:75. 二位五通阀及三位五通阀:

14、( 1)在进行钳铆接调整时,二位五通阀右端线圈通电,阀芯右移,气缸上升顶住工件,铆接完成后,阀左端线圈通电,阀芯左移,气缸利用重力下降。根据工厂气源及相关控制要求,选取4V210-08 型号的二位五通电磁阀即可满足要求,其相关性能参数如下:工作介质:空气作用方式:先导式使用压力范围: 0.1 0.8MPa图片如下:( 2)根据工厂气源及相关控制要求, 选取 4M110-M5型号的三位五通电磁阀即可满足要求,其相关性能参数如下:8工作介质:空气作用方式:内部先导式使用压力范围: 0.15 0.8MPa图片如下:3.3 控制系统硬件构成3.3.1硬件构成图系统采用触摸屏和20 路串口继电控制板进行

15、系统信息采样、显示和控制。硬件构成如图 1。9图 13.3.2通信协议触摸屏与 20 路串口继电控制板的通信协议为 free protocol 方式,其波特率为: 9600;奇偶校验:无;数据位: 8 位;停止位: 1 位,无校验。3.3.3控制系统的界面系统采用半自动控制和手动控制两种方式,方便现场实际操作需要。两种控制方式互锁。控制界面如图 2。10图 21半自动控制在控制界面上,按半自动控制按钮(按钮变红色),这时半自动的启动按钮和急停按钮才有效。该功能由半自动控制按钮激发宏macro_2 完成。按启动按钮启动半自动操作, 按钮旁的指示灯会变红, 半自动操作结束指示灯灭。在半自动操作期间

16、系统会锁定半自动控制选择按钮。 该功能由启动按钮激发宏 macro_11 和页面循环宏 macro_10 完成。若发生意外,可按急停按钮停止一切操作,改用手动操作回复初始状态后,才能再次启动半自动操作。急停功能由急停按钮激发宏macro_13 完成。2手动控制在控制界面上,按手动控制按钮(按钮变红色),这时手动区域内按钮才有效。该功能由手动控制按钮激发宏 macro_3 完成。夹紧、松开和上升、下降等按钮都是复现按钮,对应的功能都是由该按钮激发宏完成( macro_4- macro_7 和 macro_14- macro_17 )。铆枪上升、铆枪下降按钮都是取反按钮,分别是功能的起动和停止。对

17、应的功能都是由该按钮激发宏完成 (macro_8、macro_9 和 macro_18、macro_19 )。113.4 控制系统程序设计void macro_1( )/ 全局初使宏。使自动、手动可选SetByteData( 0,1,15,5, 1);/开手动、自动控制SetByteData( 0,1,16,5, 1);SetByteData( 0,1,17,5, 0); /禁止自动启动SetByteData( 0,1,100,5, 0); /关停所有步进SetByteData( 0,1,101,5, 0);SetByteData( 0,1,102,5, 0);SetByteData( 0,1

18、,103,5, 0);SetByteData( 0,1,104,5, 0);SetByteData( 0,1,105,5, 0);void macro_2( )/ 半自动选择宏 bool pValue1;static unsigned short k=1;GetByteData( 0,1,11,1,1, &pValue1);if(pValue1)SetByteData( 0,1,16,5, 0);/用 LB16 来锁手动if(k=1)SetByteData( 0,1,17,5, 1);elseSetByteData( 0,1,16,5, 1);SetByteData( 0,1,17,5, 0)

19、;k=2;void macro_3( )12/ 手动控制宏bool pValue1;/ 从通道 0 从机 1 地址 11 中读出 1 个数据保存到 &pvalue 中 GetByteData( 0,1,10,1,1, &pValue1);if(pValue1)/ 将数据 0 写入通道 0 从机 1地址 16中SetByteData( 0,1,15,5, 0);/用 LB15 来锁自动操作else/ 将数据 1 写入通道 0 从机 1地址 16中SetByteData( 0,1,15,5, 1);void macro_4( )/ 气缸 1 手动操作夹紧宏 bool pValue2;int k;s

20、tatic unsigned char c12 = O(00,01,1)E;/ 从通道 0 从机 1 地址 31 中读出 1 个数据保存到 &pvalue 中GetByteData( 0,1,30,1,1, &pValue1);if(pValue1)c5=0;c6=1;c8=1;Output( 1, &c0, 12, k);Delay(30);SetByteData( 0,1,30,5, 0);void macro_5( )13/ 气缸 1 手动操作松开宏 bool pValue3;int k;static unsigned char c12 = O(00,01,1)E;/ 从通道 0 从机

21、1 地址 32 中读出 1 个数据保存到 &pvalue 中GetByteData( 0,1,31,1,1, &pValue1);if(pValue1)c5=0;c6=1;c8=0;Output( 1, &c0, 12, k);SetByteData( 0,1,31,5, 0);void macro_6( )/ 气缸 1 手动操作上升宏bool pValue4;int k;static unsigned char c12 = O(00,02,1)E;/ 从通道 0 从机 1 地址 33 中读出 1 个数据保存到 &pvalue 中 GetByteData( 0,1,32,1,1, &pValu

22、e1);if(pValue1)c5=0;c6=2;c8=1;Output( 1, &c0, 12, k);Delay(30);SetByteData( 0,1,32,5, 0);14void macro_7( )/ 气缸 1 手动操作下降宏bool pValue5;int k;static unsigned char c12 = O(00,02,1)E;/ 从通道 0 从机 1 地址 34 中读出 1 个数据保存到 &pvalue 中 GetByteData( 0,1,33,1,1, &pValue1);if(pValue1)c5=0;c6=2;c8=0;Output( 1, &c0, 12,

23、 k);Delay(30);SetByteData( 0,1,33,5, 0);void macro_8( )/ 铆枪 1 手动操作上移宏 bool pValue6;int k;static unsigned char c12 = O(00,05,1)E;/ 从通道 0 从机 1 地址 35 中读出 1 个数据保存到 &pvalue 中GetByteData( 0,1,34,1,1, &pValue1);if(pValue1)c5=0;c6=5;c8=1;15Output( 1, &c0, 12, k);elsec5=0;c6=5;c8=0;Output( 1, &c0, 12, k);voi

24、d macro_9( )/ 铆枪 1 手动操作下移宏bool pValue7;int k;static unsigned char c12 = O(00,06,1)E;/ 从通道 0 从机 1 地址 11 中读出 1 个数据保存到 &pvalue 中 GetByteData( 0,1,35,1,1, &pValue1);if(pValue1)c5=0;c6=6;c8=1;Output( 1, &c0, 12, k);Delay(30);c5=0;c6=9;c8=1;Output( 1, &c0, 12, k);elsec5=0;c6=6;c8=0;Output( 1, &c0, 12, k);

25、Delay(30);c5=0;16c6=9;c8=0;Output( 1, &c0, 12, k);void macro_10( ) / 系统加载循环宏 ( 自动步进)bool pValue1,pValue3,pValue4,pValue5,pValue6,pValue7; int k1;/static bool count116;/bool count16;/unsigned int i,j;static unsigned short k=0,h=0;static unsigned char c12=O(00,01,1)E;static unsigned char b12=I(00,0000

26、)E;unsigned char d12=00000000000;unsigned short e;GetByteData( 0,1,100,1,1, &pValue1);/用 LB100-105作为步进循环转换开关if(pValue1)/气缸夹紧c5=0;c6=1;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=3;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=3;c6=0;c8=1;Output( 1, &c0, 12, k1);Delay(30);Input( 1, &d0, 12, k1);e=d5+(

27、0=1)SetByteData( 0,1,101,5, 1);SetByteData( 0,1,100,5, 0);17GetByteData( 0,1,101,1,1, &pValue2);/气缸上升if(pValue2)c5=0;c6=2;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=4;c8=1;Output( 1, &c0, 12, k1);Delay(30);h+;/由 h 和 k 控制定时长短if(h=5)k+;h=0;if(k=4)SetByteData( 0,1,102,5, 1);SetByteData( 0,1,101,5,

28、0);k=0;GetByteData( 0,1,102,1,1, &pValue3);/铆钉if(pValue3)c5=0;c6=6;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=9;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=0;18c6=8;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=1;c6=0;c8=1;Output( 1, &c0, 12, k1);h+; / 由 h 和 k 控制定时长短 if(h=5)k+;h=0;if(k=5)c5=0;c6=6;c8=

29、0;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=9;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=8;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=1;c6=0;c8=0;Output( 1, &c0, 12, k1);Delay(30);SetByteData( 0,1,102,5, 0);SetByteData( 0,1,103,5, 1);k=0;GetByteData( 0,1,103,1,1, &pValue4);/铆枪复位if(pValue4)19c5=0;

30、c6=5;c8=1;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=7;c8=1;Output( 1, &c0, 12, k1);Delay(30);h+;/由 h 和 k 控制定时长短if(h=5)k+;h=0;if(k=2)c5=0;c6=5;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=7;c8=0;Output( 1, &c0, 12, k1);Delay(30);SetByteData( 0,1,104,5, 1);SetByteData( 0,1,103,5, 0);k=0;GetByteData(

31、 0,1,104,1,1, &pValue5);/气缸下降if(pValue5)c5=0;c6=2;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0;20c6=4;c8=0;Output( 1, &c0, 12, k1);Delay(30);h+;/由 h 和 k 控制定时长短if(h=5)k+;h=0;if(k=5)SetByteData( 0,1,105,5, 1);SetByteData( 0,1,104,5, 0);k=0;GetByteData( 0,1,105,1,1, &pValue6);/气缸松开if(pValue6)c5=0;c6=1;c

32、8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=3;c8=0;Output( 1, &c0, 12, k1);h+;if(h=3)k+;h=0;if(k=5)SetByteData( 0,1,105,5, 0);SetByteData( 0,1,100,5, 0);SetByteData( 0,1,15,5, 1);/解开自动操作选择SetByteData( 0,1,17,5, 1);/解开自动启动SetByteData( 0,1,200,5, 0);/指示启动灯灭k=0;21void macro_11( )/ 自动启动宏bool pValue1;G

33、etByteData( 0,1,20,1,1, &pValue1);if(pValue1)SetByteData( 0,1,100,5, 1);SetByteData( 0,1,200,5, 1);/指示启动灯亮/SetByteData( 0,1,110,5, 1);/用 LB110 作为自动起动、停止控制SetByteData( 0,1,15,5, 0);/启动时禁止断开自动选择SetByteData( 0,1,17,5, 0);SetByteData( 0,1,20,5, 0);/按钮自复位void macro_13( )/ 半自动急停宏bool pValue1;static unsign

34、ed char c12=O(00,01,1)E;int k1;GetByteData( 0,1,22,1,1, &pValue1);if(pValue1)SetByteData( 0,1,100,5, 0);/停所有步进操作SetByteData( 0,1,101,5, 0);SetByteData( 0,1,102,5, 0);SetByteData( 0,1,103,5, 0);SetByteData( 0,1,104,5, 0);SetByteData( 0,1,105,5, 0);c5=0;c6=5;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0

35、;c6=6;c8=0;Output( 1, &c0, 12, k1);Delay(30);22c5=0;c6=7;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=8;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=0;c6=9;c8=0;Output( 1, &c0, 12, k1);Delay(30);c5=1;c6=0;c8=0;Output( 1, &c0, 12, k1);Delay(30);SetByteData( 0,1,200,5, 0);/启动指示灯灭/SetByteData( 0,1,17,5,

36、 1);/解开禁止断开自动启动SetByteData( 0,1,15,5, 1);/解开禁止断开自动选择Delay(30);SetByteData( 0,1,22,5, 0);/按钮自复位void macro_14( )/ 气缸 2 手动操作夹紧宏 bool pValue1;int k;static unsigned char c12 = O(00,03,1)E;/ 从通道 0 从机 1 地址 37 中读出 1 个数据保存到 &pValue 中 GetByteData( 0,1,36,1,1, &pValue1);if(pValue1)c5=0;c6=3;23c8=1;Output( 1, &

37、c0, 12, k);Delay(30);SetByteData( 0,1,36,5, 0);void macro_15( )/ 气缸 2 手动操作松开宏 bool pValue1;int k;static unsigned char c12 = O(00,03,1)E;/ 从通道 0 从机 1 地址 11 中读出 1 个数据保存到 &pvalue 中GetByteData( 0,1,37,1,1, &pValue1);if(pValue1)c5=0;c6=3;c8=0;Output( 1, &c0, 12, k);SetByteData( 0,1,37,5, 0);void macro_16

38、( )/ 气缸 2 手动操作上升宏bool pValue1;int k;static unsigned char c12 = O(00,04,1)E;/ 从通道 0 从机 1 地址 11 中读出 1 个数据保存到 &pvalue 中 GetByteData( 0,1,38,1,1, &pValue1);if(pValue1)24c5=0;c6=4;c8=1;Output( 1, &c0, 12, k);Delay(30);SetByteData( 0,1,38,5, 0);void macro_17( )/ 气缸 2 手动操作下降宏 bool pValue1;int k;static unsi

39、gned char c12 = O(00,04,1)E;/ 从通道 0 从机 1 地址 11 中读出 1 个数据保存到 &pvalue 中GetByteData( 0,1,39,1,1, &pValue1);if(pValue1)c5=0;c6=4;c8=0;Output( 1, &c0, 12, k);Delay(30);SetByteData( 0,1,39,5, 0);void macro_18( )/ 铆枪 2 手动操作上移宏 bool pValue1;int k;static unsigned char c12 = O(00,07,1)E;/ 从通道 0 从机 1 地址 11 中读出

40、 1 个数据保存到 &pvalue 中GetByteData( 0,1,40,1,1, &pValue1);if(pValue1)25c5=0;c6=7;c8=1;Output( 1, &c0, 12, k);elsec5=0;c6=7;c8=0;Output( 1, &c0, 12, k);void macro_19( )/ 铆枪 2 手动操作下移宏 bool pValue1;int k;static unsigned char c12 = O(00,08,1)E;/ 从通道 0 从机 1 地址 11 中读出 1 个数据保存到 &pvalue 中GetByteData( 0,1,41,1,1, &pValue1);if(pValue1)c5=0;c6=8;c8=1;Output( 1, &c0, 12, k);Delay(30);c5=1;c6=0;c8=1;Output( 1, &c0, 12, k);elsec5=0;c6=8;26c8=0;Outp

温馨提示

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

评论

0/150

提交评论