入门教程|SMC606运动控制器基本运动功能的实现()

上传人:ni****g 文档编号:562062569 上传时间:2022-11-10 格式:DOCX 页数:20 大小:665.39KB
返回 下载 相关 举报
入门教程|SMC606运动控制器基本运动功能的实现()_第1页
第1页 / 共20页
入门教程|SMC606运动控制器基本运动功能的实现()_第2页
第2页 / 共20页
入门教程|SMC606运动控制器基本运动功能的实现()_第3页
第3页 / 共20页
入门教程|SMC606运动控制器基本运动功能的实现()_第4页
第4页 / 共20页
入门教程|SMC606运动控制器基本运动功能的实现()_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《入门教程|SMC606运动控制器基本运动功能的实现()》由会员分享,可在线阅读,更多相关《入门教程|SMC606运动控制器基本运动功能的实现()(20页珍藏版)》请在金锄头文库上搜索。

1、入门教程I SMC606运动控制器基本运动功能的实现()一:引言通过前几篇有趣应用教程的学习,相信大家对雷赛SMC606控制 器已经产生了兴趣(用BASIC控制SMC606实现机械手码垛如 何用C#控制机械写毛笔字点击文章标题进行回顾)。本次教程将学 习 SMC606 运动控制器的基本运动功能,通过完成一个简单运动项目, 来学习并掌握运动控制的技术。教程将使用SMC606运动控制器、三轴运动平台以及BASIC程序 实现回原点运动、定长运动、直线插补运动、圆弧插补运动、恒速运 动和输入输出信号的控制,希望能对运动控制技术感兴趣的初学者有 所帮助。二硬件原理2.1 运动控制器 SMC606 运动控

2、制器外观如图2.1 所示,图中方 框部分为本项目所需要使用的各个接口。下面按标号顺序介绍 SMC606 运动控制器接口功能:(1)电源 接口 :接入24V直流电源,为SMC606运动控制器提供电源。(2 ) Ether net接口:通过此接口实现控制器与PC机的以太网通信。(3) 轴信号接口:通过轴信号接口与电机驱动器连接。(4)原点限位接口: 与原点传感器相连接,为控制器提供原点信号。 ( 5 )通用输入接口: 用于接入按钮、开关量传感器等开关量信号。 ( 6 )通用输出接口:用 于控制指示灯、继电器、电磁阀等开关量元件。2.2 运动控制器输入输出电路 SMC606 控制器的数字输入电路原

3、理图如图2.2所示,输入信号IN由夕陪B按钮提供,SMC606内部中的 小框为光耦,作光电隔离,起到抗干扰作用。当按钮处于断开状态时,光耦里面的发光二极管处于截止状态, 不发光,则光敏三极管处于截止状态,所以给CPU输入的IN0信号为 高电平。当按钮处于闭合状态时,发光二极管导通后发光,使光敏三极管 处于导通状态,则输入给CPU的IN0信号为低电平。SMC606控制器的原点输入电路原理图如图2.3所示,输入信号 ORG由光电开关提供,SMC606内部中的小框为光耦,作光电隔离, 起到抗干扰作用。当运动平台不在原点位置时,挡片未遮挡光电开关,光电开关内 光敏三极管处于导通状态,控制器内光耦的发光

4、二极管导通发光后, 使光敏三极管处于导通状态,则输入给CPU的ORG0信号为低电平。运动平台回到原点位置时,挡片遮挡光电开关,光电开关内光敏 三极管处于截止状态,光耦中发光二极管处于截止状态不发光,使光敏三极管处于截止状态,则输入给CPU的ORG0信号为高电平。即原 点信号的有效电平为高电平。R1*CPU把走尸关5MC旳!5内盍ORFr-n?4ViSMC606控制器的输出电路原理图如图2.4所示,SMC606内部 中的小框为光耦,作光电隔离,起到抗干扰作用。输出信号OUT由10指令从CPU发出。当CPU输出信号OUTO 为高电平时,光耦里面的发光二极管处于截止状态,不发光,使光敏 三极管处于截

5、止状态,没有电流流过三极管的基极,所以三极管也处 于截止状态,指示灯LED灯不亮。同理当CPU输出信号OUT0为低电平时,发光二极管导通发光, 光敏三极管导通提供电流给三极管的基极,所以三极管导通使指示灯 LED 亮。V+SMC606 内制CPUDC24V:EGND 2.3步进电机驱动器以雷赛产品DM542步进电机驱动器为例,其 外观如图2.5所示。驱动器外部接口有控制信号接口和电机及电源接口, 还有一个拨码开关。1)控制信号接口:接收控制器传输的控制信号,其中 PUL+、PUL-为脉冲信号,DIR+、DIR-为方向信号,ENA+、ENA-为使能信 号。(2)拨码开关:采用八位拨码开关为电机调

6、整细分数、工作电流、 静态半流。SW1、SW2、SW3为最大工作电流设定。SW4为半流/全 流模式设定,默认为半流模式。 SW5、SW6、SW7、SW8 为细分模 式设定。(3 )电机及电源接口: GND为直流电源地,+V为直流电源正极, A+和A-为电机的A相线圈的连线,B+和B-为电机的B相线圈的连 线。2.4控制器与驱动器连接SMC606控制器与步进电机驱动器的有 两种连接方式,分别是差分连接和单端连接,取决于步进电机驱动器 的类型。如图2.6所示,DM542步进电机驱动器采用的是差分信号连接方 式。驱动器中小框为光耦,作光电隔离,起到抗干扰作用。控制器内26LS31输出端PUL+与步进

7、电机驱动器内光耦的发光二 极管的正极连接,输出端PUL-与发光二极管的负极连接,输出端DIR 同理。如图2.7所示,DM422步进电机驱动器采用的是单端信号连接方 式。控制器内26LS31输出端PUL+悬空,输出端PUL-与步进电机驱动器内光耦的发光二极管的负极连接,发光二极管正极与5V电源连接, 输出端DIR同理。相比较而言,脉冲信号采用差分信号传输方式不仅抵消了干扰噪 声,提高了抗干扰能力,而且两条信号线形成回路,信号地无关,避2.5 三轴运动平台本项目使用的三轴平台的外观如图2.8所示,三 个轴信号接口分别连接三个驱动器,控制三台步进电机;同时它还提 供了输入输出接口(控制按钮、 LED

8、 指示灯等)、原点和限位接口、 和24V直流电源。运动平台的三个轴均是由步距角为1.8。的步进电机、滚珠丝杆、 导轨、滑块组成。平台最大负载为5Kg,定位精度为0.03mm。其参 数为:X轴:(1)有效行程:0200mm( 2)丝杆导程:10mm( 3 )驱动器细分数:32Y轴:(1)有效行程:0100mm( 2 )丝杆导程:10mm( 3 )驱动器细分数:32Z轴:(1) 有效行程:050mm( 2 )丝杆导程:4 mm(3)驱动器细分 数: 32由三个电机的步距角为1.8可知,电机转一圈需要200个脉冲。 设置驱动器的细分数为32 时,也就是将步距角1.8再细分为 32 个角 度,此时电机

9、转一圈需要6400个脉冲。已知X、Y轴的丝杠导程为10mm,即电机转一圈滑块移动 10mm,所以滑块移动1mm时需要640个脉冲,设置X轴、Y轴的 脉冲当量为640pulse/mm。同理Z轴丝杠导程为4mm,即电机转一圈滑块移动4mm,所以滑块移动 1mm 时需要 1600 个脉冲,设置 Z 轴的脉冲当量为 1600pulse/mm。三程序设计3.1 功能介绍本次项目要实现三个功能:回原点、手动调节位置 自动执行轨迹运动。本次设计的构想图如图3.1所示。按照构想实现以下功能:(1) 按钮1按下:控制三轴回原点。按下按钮1后,Z轴滑块先进行定长 运动向上抬升一段距离,X轴与Y轴同时进行回原点运动

10、。当X轴、Y 轴都回原点完毕后,Z轴再进行回原点运动,直到Z轴回原点完毕。(2)按钮 3 按下:三轴先回原点,再执行轨迹运动。三轴回原点 动作与按钮 1 实现的动作一致。三轴回原点完成后,三轴同时进行定 长运动,即X轴滑块向左,Y轴滑块向后,Z轴滑块向上同时进行定长 运动到一定的距离,接着 Z 轴滑块进行反方向的定长运动下降致笔尖 触碰纸面,如图3.1所示的落笔位置,然后X轴Y轴进行直线插补运 动画等腰直角三角形的两斜边;之后,顺时针圆弧插补运动开始画半 圆;与此同时LED灯5亮,动作执行完毕后,笔尖停留在落笔位置, LED 灯 5灭。(3)按钮2按下:按下按钮2且按住不放,可实现Y轴滑块向前

11、 的恒速运动,松开按钮即停止恒速运动。6 f-(4)按下其他几个按钮(49)也是与按钮2 功能一致的恒速运 动,但是运动轴与方向有区别。(5)LED灯0、1、2亮分别表示X轴、Y轴、Z轴正在运动,灯 灭表示停止运动。3.2 程序框图 3.2.1 主程序框图设计根据上一节的功能构想,可以 绘制出主程序框图如图3.2所示。主程序由一个大循环构成。在大循环 中设置了从按钮 1 到按钮 9 的功能执行流程,与上一节的功能构想一 一对应。ifl 用-f-ffi/t柠止弭速培动5 按 fl L卄3.2.2多任务程序框图设计多任务程序对应为3.1节的(5)功能, 其程序框图如图3.3所示。多任务程序也是一个

12、由大循环构成,循环内 为判断X轴、Y轴、Z轴是否正在运动,正在运动对应LED灯亮,否 则灯灭。Iri 09Y Idi0 str讪 frr.r拒亦盯1光新;】心灭摘第I丁 0灭 捐页舟;亮3.2.3回零与画图子程序框图设计回原点子程序与画图子程序框图如图3.4所示。在回零子程序中,Z轴滑块做定长运动,向上抬升一小段距离,使笔抬起。在画图子程序中,X轴、Y轴、Z轴滑块同时做定长运动,将笔移动至平台中的指定位置(落笔点),Z轴滑块做定长运动,向下移动一小段距离至笔尖触碰纸面,后开始做插补运动画图。3.2.4 恒速运动与停止子程序框图设计恒速运动子程序包括了所有需要恒速运动的按钮的流程,其程序框图如图

13、3.5所示。松开按钮表示恒速运动结束,调用停止恒速运动子程序。其程序框图如图3.6所示。3.3程序设计按照程序框图的流程,编写BASIC程序。主程序代码如下 :SMCSetEquiv(0,640) 设置 X 轴脉冲当量为640 pulse/mmSMCSetEquiv(1,640)设置 Y 轴脉冲当量为 640 pulse/mm SMCSetEquiv(2,1600)设置 Z 轴脉冲当量为 1600 pulse/mm 函数括号内第一个数字表示轴号,第二个数字表示脉冲当量Run1,LED 启动多任务程序1 , LEDWhileTrue 主程序死循环IfSMCCheckDone(MyaxisX)=1

14、AndSMCCheckDone(MyaxisY)=1AndSMCCheckDone(MyaxisZ)=1Then 当三个轴的运动状态都 为停止时IfSMCReadInBit(0)=0Then 按下按钮1时函数括号内的数字为通用输入IO号,等号后面的数字为设置电平,0为低电平,1为高电平Gosub goHome 调用回零子程序EndIfIfSMCReadInBit(2)=0Then 按下按钮3时Gosub goHome 调用回零子程序WhileSMCCheckDone(MyaxisX)=0OrSMCCheckDone(MyaxisY)=0OrSMCCheckDone(MyaxisZ)=0Wend

15、 等待所有轴回零完毕Gosub goPmoveAndArc 调用定长+画图子程序EndIfIfSMCReadInBit(1)=0Then 按下按钮2时Gosub goVmove 调用恒速运动子程序WhileSMCReadInBit(1)=0Wend 等待按钮2松开IfSMCReadInBit(1)=1Then 松开 按钮2 时Gosub goStop 调用 松开按钮子程序EndIfEndIfEndIfWend主程序主要有以下内容:先使用函数SMCSetEquiv()设置三个轴 的脉冲当量,其后设置速度和位置参数时,位移单位均为mm。启动多任务程序LED,接着在While True大循环中编写主程序的所 有代码。使用函数SMCCheckDone()判断轴是否都为停止状态,当函数返 回值为1表示运动状态为停止。使用函数SMCReadl nBit()判断按钮是否按下。按钮1按下调用回 零子程序goHome ;按钮3按下,调用定长+画图子程序 goPmoveAndArc ;按钮2按下调用恒速运动子程序goVmove以及 松开按钮时的停止子程序goStop。完整程序代码见附录

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号