三菱fx3g系列的plc是不支持三角函数指令的如正弦(SIN)、余弦(COS)、正切(TAN)以及反三角函数指令,这需要3U系列的才支持,这些指令是计算弧度(RAD)的,因此需要把角度数值转换为弧度值才能用三角指令,而且指令中的数值都是浮点数。那3g中不支持如何实现,除了更换plc外我们可以采用如下方向实现:
按照三角函数数值对照表,把所有的角度和结果输入到程序中,用到哪个角度就调用对应的数值即可,这是最笨的方法,如果要求计算的角度不多的可以采用。
按照三角函数的泰勒级数展开式编写子程序:忽略最后的高阶无穷小项目,我们在plc的梯形图中按照加减乘除的四项运行就能简单计算出函数值,如下图中计算正弦函数的sin值,首先把角度转换为弧度值,按照上述的式子计算,45°的结果为0.705,误差还是有的,如果要求精度不高的话可以采用此方法。
第三种方式就是如果与触摸屏通讯,我们可以使用宏指令中内置函数库中的数学运算函数进行计算,首先就是把我们的plc的角度值传输到触摸屏的数据寄存器中,计算完成结果再传到plc中,下面是威纶通触摸屏用宏指令编写三角函数的:
macro_command main()
float a,b //定义两个浮点数a和吧
GetData(a,"Mitsubishi FX3U/FX3G",D,0,1) //获取plc上的角度值D0并赋值给a
SIN(a,b)//计算出其sin值保存到b中
SetData(b,"Mitsubishi FX3U/FX3G",D,10,1)//把结果再回传到plc上的D10中
end macro_command
以上就是三菱fx3g的plc计算三角函数的几种方式
(责任编辑:admin) |