st语言 数组的常用方法_三菱ST语言编程中常用的函数/功能块使用方法

大部分PLC都会内置很多基本的函数和功能块供编程人员调用,而且很多具有通用性,也就是在不同品牌的PLC中,这些函数和功能块的名称、用法和功能相同,记住这些函数和功能块的名称和使用方法,能让我们编程时更加便捷。下面以三菱PLC的编辑软件GX Works3为例,展示这些函数、功能块的使用方法。

边缘检测与计时器

1, R_TRIG/F_TRIG(上升/下降沿检测功能块)

上升沿和下降沿应该是所有程序里最常用的FB(功能块)之一了,他的功能是检测一个bool变量变化的边缘,输出一个扫描周期,下面通过一个例子介绍一下常用的命名方法和编程格式:检测开始按钮X1的上升沿, 置位Y0,检测停止按钮X2的下降沿,复位Y0。

第一步声明标签, 我个人习惯将上升沿加前缀“rt”,下降沿加“ft”:

声明标签

第二步编程,FB的输入引脚赋值要在()内操作,而输出引脚可以当作变量直接使用,节省一个标签:

编程格式

增加变量前缀,无论在程序的什么地方使用,都能一眼看出变量的类型,方便阅读程序。

2,TON/TOF(延时启动/关闭功能块)

延时功能块也是非常常用的FB,除了起到延时的作用,还可以用来过滤信号,起到筛选的作用,例如:使用对射光电传感器X0(阻挡时ON)检测皮带上产品缝隙,当传感器OFF时间超过100ms时报警Y0。

声明标签

编程

3,TP(脉冲定时器)

脉冲定时器的功能是输出一个固定时长脉冲,典型的应用如报警灯的控制,举个例子:当变量bAlarm触发后,点亮报警灯Y0,要求每隔700ms亮一次,一次亮200ms,持续闪烁。

声明标签

编程

ton功能块的输入设置为自身输出的非,作用是每隔700ms生成一个单扫描周期的脉冲,tp功能块将脉冲的时长设定为200ms,并给到指示灯。

算术运算

算数运算除了常用的'+','-','*','/'(加减乘除)还有“**”(幂运算)''(比较)等。还有一些常用的函数可供使用。

1,MAX,MIN(最大值,最小值函数)

选取最大值/最小值存入iMax/iMin中,三菱最多可比较28个数据。这个函数在我的《五子棋》游戏程序中有用到,选取一个棋子4个方向连棋数和分数的最大值。

2,MOD(取余数函数)

取余数是非常有用的函数,比如生成一个范围内的随机数时可以使用MOD对生成的数字进行限制;可以将一维数组存入多维数组时使用MOD进行设限,例如:将一维数组DataListA[0..99]的数据传递给二维数组DataListB[0..1,0..49]。

3,ABS(绝对值函数)

还有很多三角函数(sin,cos,tan)反三角函数,这里就不再演示了,用法差不多。

类型转换

类型转换的函数指令非常多,基本涵盖了所有数据类型之间的相互转换,格式基本相同。

类型转换

下面以“幂运算”为例演示用法:

由于三菱的幂运算要求实数,所以在计算前先将整数转为实数,计算后的结果也是实数,想要存入整数变量还要再转为整数。

字符串处理

字符串的处理函数经常在TCPIP通讯中用到,尤其是工业相机的应用中,种类也是非常多:

字符串处理

以常用的MID截取函数为例,讲述函数用法:解析由相机发来的字符串,包含一个产品的XY坐标和旋转角度C,存入实数变量iX,iY,iC。

MID函数

注意,字符串的空格也算一位。

输入源字符串,截取长度,截取位置,将获得的字符串转换为实数后赋值。

其他

在三菱的部件选择窗口中,可以找到非常多的系统功能块和函数:

部件选择

没有必要记住每一个函数的使用方法和名称,当你需要实现某种功能时,直接在搜索框搜索功能名称(中文就行),就会得到符合的功能块,如果不会使用可以按F1按键查看帮助。

帮助文档

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
三菱ST语言编程,定时器是一种用于控制特定时间间隔的功能块。定时器可以用来实现一些需要在固定时间间隔内执行的任务,例如周期性的数据采集、定时报警等。 在ST语言,我们可以通过声明定时器变量来定义一个定时器,并设置定时器的时间周期。常用的定时器指令包括TON(定时器ON延时),TOF(定时器OFF延时)和TP(定时器脉冲延时)。 TON指令用于设定一个定时器,当定时器的累计时间达到设定的时间周期时,输出一个ON信号。TOF指令则在定时器完成计时后,输出一个OFF信号。TP指令提供了定时器的脉冲输出功能,当定时器的总时间达到设定的时间周期时,输出一个脉冲信号。 除了时间周期设置外,我们还可以通过使用定时器的运行指令,如EN、DN和RES来启动、停止和复位定时器。EN指令用于使定时器开始计时,DN指令用于停止定时器的计时,RES指令用于复位定时器的累计时间。 值得注意的是,定时器的时间周期单位为秒,可以根据具体需求进行设置。另外,三菱ST语言编程还可以通过使用定时器的输入指令,如ETRD、EH、EL等,来监测外部信号的状态并触发定时器的计时行为。 总之,三菱ST语言编程的定时器功能可以帮助我们实现一些需要按照设定的时间间隔执行的任务,提高自动化控制系统的效率和准确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值