[三菱] FX5U往SD卡内文件写数据

[复制链接]
查看56476 | 回复0 | 2024-4-16 15:47:00 | 显示全部楼层 |阅读模式
在上一篇《FX5U读取SD卡内文件数据》中我们讲解了FX5U如何用SP.FREAD指令读取SD卡内的数据,我们现在来看下SP.FWRITE指令,该指令的作用是用于将软元件数据写入到SD存储卡的指定文件中。该指令可以将软元件数据以CSV格式转换写入或者二进制写入到SD卡中的。



      该指令需要用到的参数以及软元件如下:





      U是虚拟,S1固定为K2,我们重点来看下d1,s2,,s3,d2这几个操作数:

控制数据(d1):





      d1+0寄存器:设置执行类型,根据SD卡内的文件类型以及想要数据写入的格式对该寄存器进行设置。

      例如:将软元件数据以10进制(16位)写入SD卡内部的CSV文件,那么d1+0寄存器值为H0100。

      d1+3寄存器:使用用途设置区,用于设置数据写入开始位置,需要注意的是仅在执行/完成类型(d1)+0指定为“01**H:CSV格式转换写入”,且文件位置(d1)+4,(d1)+5指定为“FFFFFFFFH:添加至文件的最后”时,设置有效。设置无效时,指定为“0”。



      d1+4寄存器(双字):文件位置,设置文件写入位置,需要注意的是,二进制文件写入时才能指定写入位置,CSV文件只能选择从文件起始或者最后。



      d1+6寄存器:设置写入的的列数,该设置只对CSV文件有效,写入二进制文件时固定设置0,

      d1+7寄存器:数据类型指定,一般设置为2(即使用d1+0寄存器指定)。

存储了文件名的起始软元件(s2):



存储了写入数据的起始软元件(s3):



操作数(d2):

      通过处理完成置为ON的位软元件(但是,异常完成时(d3)+1也将ON)

      本例程将控制数据存储在D200,功能是将D131-D139的数据以十进制(16位数据)写入到SD卡内的\test1.csv文件内,并添加到文件的最后。

控制数据设置如下:

D200设置值H100:将软元件数据以十进制(16位数据)写入到CSV文件

D203设置值H1:添加至文件的最后

D204-D205设置值HFFFFFFFF:添加到文件的最后

D206设置值H9:写入9列数据

D207设置值H2:数据类型由D200指定







指令各操作数说明如下:

U1:虚拟。

K2:固定。

D200:控制数据

“\test1”:SD卡根目录下test1.csv文件。

D130:需要写入的数据存放于D130开始的区域。

M102: 通过处理完成置为ON的位软元件(但是,异常完成时M103也将ON)。

      本写入指令是将D131-D139的数据以十进制(16位数据)写入到SD卡内的\test1.csv文件内,并在文件的最后新建一行,列数9列(D206设置)。

      D130-D139数据设置:



      D130为请求写入数据数,D131-D139存放具体写入数据。

      写入至\test1.csv文件内情况如下:

写入前



写入后



      写入正常情况下D201的值为0,异常时,D201存放错误代码



      详细错误代码参考下表:



      以上是关于FX5U将软元件数据写入SD卡内CSV文件的说明,如有疑问可留言或致电我司。

兴东机电设备(深圳)有限公司

三菱电机自动化授权代理商

三菱工控产品技术培训中心

三菱工控产品维修中心

所有原创文章版权为 兴东机电设备(深圳)有限公司 所有,严禁盗用文章等相关内容。如喜欢并愿意分享,请一定通过链接方式转载分享。欢迎关注此公众号,如有三菱产品需求、技术问题,可以联系我公司:0755-82984881。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则