DRAND函数可以产生0-1的随机浮点数   DRAND的输入Seed有什么意义?     更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acetaohai123   我的在线论坛: http://csrobot.gz01.bdysite.com/   问题交流: QQ:910358960 邮箱:acetaohai123@163.com  …
该参数是包含六个数字类似于IP地址的字符串形式,例如"1.1.1.2.7.1",如果为空字符串,则默认使用本机的AmsNetID 你可以右击贝福的图标,然后点击About查看当前本机的ID   TC3修改TwinCAT AMS NET地址: 右击任务栏中TwinCAT图标,Router,Change AMS NetId,然后重新输入   TC2修改TwinCAT AMS NET地址: 右键任务栏中TwinCAT图标,选择"Properties". 在控制器及电脑的&…
对于相对编码器类型轴(包括虚拟轴),可以使用贝福提供的找原点功能块MC_Home.   HomingMode是指机器在往前跑的时候(30单位/s的默认速度),当碰到阻挡,则会有一个布尔值从FALSE改成TRUE,此时认为超过了零点.然后该轴反向运动,一定能捕捉到TRUE改成FALSE,然后就停下,认为当前位置是原点(不一定是0位置,你Position是多少就将当前位置设置为多少)   在虚拟的轴测试中,可以做一个按钮,按下为TRUE,松开为FALSE.当点击HOME之后,该轴的位置马上变成很小的…
首先确认驱动器没有报错(如果驱动器报错,请先解决绝对值编码器的清除多圈数据问题) 报错一般上使能就会报错,没法测试运转,而且不管是用贝福自带的NC功能还是自己写的都会一样的效果   请删除在贝福的EtherCAT目录下的松下的XML文件(可能就是这个XML文件的问题)   然后按照"松下伺服如何与TwinCAT3连接使用1"的说明(只是不放XML文件,重新扫描一遍出来),虽然扫出来的Drive1是问号,但是是能用的.   对于已有的项目,可以删除所有的Devices的东西和Mappin…
由于TC2和TC3都有可能用到,个人推荐都安装,但是注意必须是先安装的TwinCAT2,然后安装TwinCAT3,如果反了可能两个都没法用(打开TcSwitchRuntime提示Both TwinCAT are activated,这样你一个也无法禁用),如果是这种情况请先把两个都卸载了,如果已经安装了TwinCAT2,则在安装TwinCAT3的时候,会自动检测是否存在TwinCAT2,如果有就自动禁用,可以发现桌面右下角图标变成灰色(此外需要注意,TC2有64位的版本,但是不能运行runtim…
本节主要演示了使用自定义函数实现电机的运动(梯形曲线和S曲线都有实现),这里的JOG+和JOG-,针对单个关节实现了PTP的运动(跟贝福的MoveAbsolute功能块实现效果一致),在此没有介绍运动控制算法的具体原理,不理解的可以网上搜索梯形曲线和S曲线的文章,并不只是非标自动化需要用到控制电机的PTP运动,比如升降机,电梯,或者凡是需要匀滑启停的电机控制,都逃不过要用到这方面的知识,读者也可以自己测试5次或者7次等其他自定义加速曲线,每一种运动给出的位置,速度,加速度都会有不同的效果.  …
在前面一节,我们简单介绍了通过PLC+HMI实现完整控制松下伺服的上使能-运动,采集位置,速度等功能,这里我们会大量简化用到的贝福功能块(为了更加实用).首先依然是对单个轴的封装,我们之前的做法,例如伺服上使能,使用了MC_Power模块,这个模块的输入和输出引脚都是自己定义的变量,比如是否上电成功我们是靠AxisPowerReady的信号来判断的,如果有两个甚至多个伺服的时候,这样做就很不方便管理了,所有的同类型变量都应该用数组统一管理.   改变之后的上使能,就变成了调用一个模块(我们把Ax…
在前面我们已经学会了使用贝福自带的调试软件完成试运行,接下来是使用TWINCAT PLC实现这个功能,右击PLC添加一个PLC项目   在VISUs上右击添加一个HMI人机界面   目前PLC程序和人机界面都是空的,我们要通过这两个实现我们自定义的点动.首先右击Reference添加TC2_MC2的类库(这个类库是Motion Control的类库)   右击GLVs,添加两个全局变量,注意类型为AXIS_REF(比较特殊的类型,是跟NC轴交互的变量),在TWINCAT2中不太一样,一个AXIS…
首先是用松下伺服自带的软件可以测试运行(驱动器,电机都连接好,然后用USB线连接到松下伺服驱动器的X1口),打开调试软件会自动提示连接到伺服   一般需要对驱动器清除绝对值编码器数据(驱动器可能报错40错误),写入驱动器参数值等等,这里不再详细说明如何改参数之类的(可以参考我对松下伺服驱动器的文档),我把对应的参数文件放到了项目中,这里只演示了传入参数文件   然后就可以使用松下自带的软件测试运行,能够正常运行说明驱动器参数,接线都没有问题.相反如果用伺服自带的软件走不起来,就没有必要用TWIN…
常见的模拟量模块(还有更高端和更低端的,使用方法都一样) EL3054和EL4024(4路模拟量输入和输出模块)   常见的数字量模块(还有更高端和更低端的,使用方法都一样) EL1809和EL2809(16路数字输入和输出模块)   贝福模块的一个优点就是模块化结构(你可以选择要多少个数字输入输出,模拟量输入输出,也可以不要,所以扩展IO会非常方便,只需要多加一片就可以了,一片还可以分为2个,4个,8个,16个点的)   右击项目的IO-Devices,然后Scan(如果Scan不可用,请先把…