倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何在初始化的时候写入参数

最常见的是定义一个全局变量,然后跟对应的变量绑定,比如我定义了一个SINT型的变量ControlWord 数值是8,定义好之后编译一下,可以发现PLC程序中或多出来这个变量(MAIN.ControlWord就是我们定义的输出型变量,注意AT%Q*表示输出型,AT%I*表示输入型)

ControlWord AT%Q*:SINT:=8;

?

随后我双击这个变量,Linked to中找到要绑定的变量即可(你看到只有较少的类型显示出来了,因为TWINCAT只呈现了类型相同的SINT型变量)

?

前面这种方法的缺点是不是"方法",更标准的做法是通过ADSWrite函数的方法把参数写进去,而不是绑定起来。使用功能块ADSWRITE,前面的参数NETID可以两个单引号,PORT如果写NC是500,写PLC是801,地址组和地址偏移下面会介绍,SRCADDR就是要写入的数值,可以用ADR取地址函数,把MAIN函数对应的PLC变量名放过来

?

鼠标放到对应的变量文本框中可以提示当前变量的IndexGroup和IndexOffset可以查看地址组和地址偏移

?

点击写入之后,可以发现Online Value已经写成了123

?

?

更多教学视频和资料下载,欢迎关注以下信息:

我的优酷空间:

http://i.youku.com/acetaohai123

?

我的在线论坛:

http://csrobot.gz01.bdysite.com/

?

问题交流:

QQ:910358960

邮箱:[email protected]

?

?

?

时间: 2024-10-14 22:45:52

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何在初始化的时候写入参数的相关文章

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-电机实际运行距离跟给定距离不一致怎么办,如何设置Scaling Factor

有时候,让电机从0度转到绝对的360度,有时候会出现电机实际转动更多或者更少的情况. ? 一般是电机的编码器的Scaling Factor Numerator数值不对导致的,数值越小,则同比转过角度越多,例如我数值是0.0001的时候,360度实际对应了720度以上,我改成0.00035之后,就差不多了. ? 那么如何精确的设置这个参数呢?参考讲义说一圈对应的脉冲数和一圈对应的长度(注意TwinCAT默认单位是mm,可以改成角度,那么一圈对应就不是360mm而是360度,同样可以360/一圈对应

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-为什么无法打开官方范例的项目,打开tszip文件时提示尝试越过结尾怎么办

打开新的解决方案,找到tszip文件 ? 提示错误Advanced Setting时越过结尾 ? 到这里一般VS会卡死 ? 但是我们已经可以得到解压出来的文件夹,其中包含PLC的完整项目文件夹,可以新建一个TwinCAT项目之后复制过去 ? 然后就可以在PLC上右击加载对应的PLC项目 ? ? 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acetaohai123 ? 我的在线论坛: http://csrobot.gz01.bdysite.co

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何配置虚拟轴 TC2

右击NC- Configuration,然后Append Task,然后右击Axis,Append Axis ? 轴的类型可以分为:Continuous Axis,默认的类型,NC可以连续闭环控制该轴,Encoder Axis,编码器类型,NC只能读不能控制,不做任何设置直接确认. ? 有些页面默认是不可用的,只有在RUNNING模式下才会变得可用 ? 首先是对编码器的设置,General中设置的是编码器名称和类型(这里不用管,因为是虚拟轴) ? 右击PLC,然后添加PLC项目,把前面写好的PL

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何配置虚拟轴 TC3

在Motion上添加一个NC Task ? 在Axis上右击添加一个轴,类型为Continuous Axis ? 在PLC上右击添加新项,然后添加一个PLC项目 ? 在引用中添加TC2_MC2的库引用 ? 添加一个全局的变量,定义AXIS_REF变量类型 ? 重新编译一下,然后在Settings中Link To PLC,选择刚才的全局变量 ? 由于是TC3,前面做好之后,这里的轴的Input和Output都会自动链接好 ? 此时切换到轴的Online页面下,点击Activate Configur

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-点击运行按钮进入到运行状态报错Error starting TwinCAT System怎么办 AdsWarning1823怎么办

一般提示如下 ? 点击Device,然后选中当前真正连接到的网卡 ? 一般是由于重装系统之后,没有把本来是realtime capable的设备Install,所以找不到支持EtherCAT的设备导致的,只需要重新安装一下支持的网卡即可,如果还是不行,则删除原来扫出来的设备,重新扫描一次 ? ? ? 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acetaohai123 ? 我的在线论坛: http://csrobot.gz01.bdysite

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-有时候项目会无法编译,重新生成就自动卡死或者自动退出怎么办

删除所有中文注释,有中文注释则不一定能编译成功. ? ? 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acetaohai123 ? 我的在线论坛: http://csrobot.gz01.bdysite.com/ ? 问题交流: QQ:910358960 邮箱:[email protected] ? ? ? ? ? ? ? ? ?

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何设置PLC的扫描周期,运行周期

双击PlcTask,然后再Cycle ticks中可以修改PLC的扫描周期,例如修改为2ms ? 为了验证是否真的是2ms,可以在程序中跟计数器绑定使用,PLC2ms扫描一次,计数器也是每个周期增加0.002,所以可以看时间是不是一秒一秒的增加. ? 在TC2中,需要切换到Task configuration,然后定位到一个Task(默认只有Standard),然后修改Interval ? 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acet

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何让不同的PLC程序分线程运行 TC3

右击Tasks,添加一个新的Task ? 可以为这个线程设置自定义的扫描周期 ? 然后在项目上右击添加Referenced Task ? 在TaskSub1上右击添加现有项,把之气写好的PRG程序绑定好即可(就像默认的PlcTask绑定了MAIN一样,注意只能是PRG,不能是FUN或者FB) ? 在子线程中,你不可以直接修改MAIN程序的变量,但是可以获取变量,当然对于全局变量则都是可以读写的. ? ? 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.c

倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-点动面板的每个按钮含义

参考下面的图示 ? ? 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acetaohai123 ? 我的在线论坛: http://csrobot.gz01.bdysite.com/ ? 问题交流: QQ:910358960 邮箱:[email protected] ?