欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载
     

    关于PLC中字符与数据之间如何进行转换.doc

    • 资源ID:3387777       资源大小:22KB        全文页数:5页
    • 资源格式: DOC        下载积分:2
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要2
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    关于PLC中字符与数据之间如何进行转换.doc

    关于PLC中字符与数据之间如何进行转换学习PLC编程过程中不可避免会接触到数据运算、比较等操作,当两个操作数类型不同时就需要进行转换,所以数据转换指令也是编程的重要指令。但是很多人往往不是太了解ASCII字符及字符与数据之间如何转换,本文就着重介绍字符与数据之间如何进行转换。有些设备在通信过程中发送的报文是ASCII形式,那么就需要将其转换成数据。一、名词认识1. ASCII字符字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、!·#¥%*()+等等。在 ASCII 编码中,一个英文字母字符存储需要1个字节2. 字符串字符串变量是一个字符序列,其中的每个字符均以字节形式存储。STRING 数据类型的第一个字节定义字符串的长度,即字符字节数。下图所示为存储器中以变量形式存储的 STRING 数据类型。字符串的长度可以是 0 到 254 个字符。变量字符串的最大存储要求为 255 个字节(长度字节加上 254 个字符)。 如果直接在程序编辑器中输入常数字符串参数(最多 126 个字符),或在数据块编辑器中初始化变量字符串(最多 254 个字符),则字符串赋值必须以双引号字符开始和结束。3. 字符组ASCII 字符数组指令的字符输入输出采用 BYTE 数据类型。ASCII 字符数组为被引用的字节地址序列,与字符串类似,只是没有指定长度。由于未使用长度字节,因此该数组并不是 STRING 数据类型。可使用 ASCII 字符串指令处理 STRING 数据类型的变量。 二、字符转换指令类型1)整数转字符串(I_S):将整数字 IN 转换为长度为 8 个字符的 ASCII 字符串。格式 (FMT) 分配小数点右侧的转换精度,并指定小数点显示为逗号还是句点。结果字符串会写入从OUT 处开始的 9 个连续字节中。nnn表示小数点右侧的位数,可设置为0-5。c 位指定使用逗号 (c=1) ,使用小数点 (c=0) 作为整数部分与小数部分之间的分隔符。   下图还给出了值的示例,其格式为:使用小数点(c = 0),小数点右侧有三位数 (nnn = 011)。OUT 处的值为下一字节地址中存储的字符串的长度。  2)双整数转字符串(DI_S)双整数转换为字符串的指令会将双整数 IN 转换 为长度为 12 个字符的 ASCII 字符串。格式(FMT) 分配小数点右侧的转换精度,并指定小数点显示为 逗号还是句点。结果字符串会写入从OUT 处开始的13 个连续字节中。输出字符串的长度始终为 12 个字符。输出缓冲区中小数点右侧的位数由nnn 字段指定。nnn 字段的有效范围是 0 到 5。如果分配0 位数到小数点右侧,则该值不显示小数点。对于nnn 大于 5 的值,输出为 12 个 ASCII 空格字符组成的字符串。c 位指定使用逗号 (c=1) 还是小数点 (c=0) 作为整数与小数部分之间的分隔符。格式的高4 位必须是零。下图还给出了一个值的示例,其格式为:使用小数点(c = 0),小数点右侧有四位数 (nnn = 100)。OUT 处的值为下一字节地址中存储的字符串的长度。3)浮点数转字符串(R_S)实数转换为字符串的指令会将实数值 IN 转换为 ASCII 字符串。格式(FMT) 分配小数点右侧的转换精度、小数点显示为逗号还是点以及输出字符串的长度。转换结果放置在以OUT 开头的字符串中。结果字符串的长度在格式中指定,可以是3到 15 个字符。CPU 使用的实数格式最多支持 7 位有效数字。尝试显示7 位以上有效数字会产生舍入错误。输出字符串的长度由ssss 字段指定。0、1 或 2 个字节大小无效。输出缓冲区中小数点右侧的位数由nnn 字段分配。nnn 字段的有效范围是 0 到5。如果分配0 位数到小数点右侧,则该值不显示小数点。如果nnn 大于 5,或者因分配的输出字符串长度太小而无法存储转换的值,则会用 ASCII 空格字符填充输出字符串。c 位指定使用逗号 (c=1) 还是小数点 (c=0) 作为整数与小数部分之间的分隔符。下图还给出了一个值的示例,其格式为:小数点(c = 0),小数点右侧有一位数(nnn = 001),输出字符串的长度为 6 个字符 (ssss = 0110)。OUT 处的值为下一字节地址中存储的字符串的长度。4)字符串转整数(S_I)INDX 转换的起始字符参数,INDX 值通常设为 1,从字符串的第一个字符开始 转换。INDX 值可设置为其它值,以在字符串中的不同点处开始转换。当输入字符串包含不属于要转换的数字一部分的文本时,可采用此方法,遇到不可转换的将自动终止。例如, 如果输入字符串为“Temperature:77.8”,可将INDX设置为 13 来跳过字符串开头的单词 “Temperature:”转换结果77。如果INDX为1,则IN输入字符串“12345”转换成12345。如果INDX为2,则转换为23455)字符串转双整数(S_DI):与S_I类似,此处不复述。6)字符串转浮点数(S_R)将字符串转换为实数的指令不会转换以科学记数法或指数形式表示实数的字符串。该指令不会产生溢出错误(SM1.1),但会将字符串转换为指数之前的实数,然后终止转换。例如,字符串“1.234E6”会转换为实数值 1.234,而不会出现错误。7)整数转ASCII字符组(ITA)将整数值 IN 转换为 ASCII 字符数组。格式参数FMT 将分配小数点右侧的转换精度,并指定小数点显示为逗号还是句点。得出的转换结果将存入以OUT 分配的地址开始的8 个连续字节中。8)双整数转ASCII字符组(DTA)将双字 IN 转换为 ASCII 字符数组。格式参数FMT 指定小数点右侧的转换精度。得出的转换结果将存入以OUT 开头的 12 个连续字节中。 输出缓冲区的大小始终为 12 个字节。输出缓冲区中小数点右侧的位数由nnn 字段分配。nnn 字段的有效范围是 0 到 5。如果分配0 位数到小数点右侧,则转换后的值无小数点。对于nnn 值大于 5 的情况,将使用 ASCII 空格字符填充输出缓冲区。c 位指定使用逗号 (c=1) 还是小数点 (c=0) 作为整数部分与小数部分之间的分隔符。4 个最高有效位必须始终为零。9)浮点数转ASCII字符组(RTA)将实数值 IN 转换成 ASCII 字符。格式参数FMT指定小数点右侧的转换精度、小数点显示为逗号还是点以及输出缓冲区大小。得出的转换结果会存入以OUT 开头的输出缓冲区中。 得出的 ASCII 字符数(或长度)就是输出缓冲区的大小,它的值在 3 到 15 个字节或字符之间。实数格式最多支持7 位有效数字。尝试显示7 位以上的有效数字将导致舍入错误。下图显示了 RTA 指令的格式操作数 (FMT)。通过ssss 字段分配输出缓冲区的大小。0、1 或 2 个字节大小无效。输出缓冲区中小数点右侧的位数由nnn 字段分配。nnn 字段的有效范围是 0 到 5。如果分配0 位数到小数点右侧,则转换后的值无小数点。如果nnn 的值大于 5 或者分配的输出缓冲区太小以致无法存储转换后的值,则使用 ASCII 空格填充输出缓冲区。c 位指定使用逗号 (c=1) 还是小数点 (c=0) 作为整数部分与小数部分之间的分隔符。下图给出了一个数值作为示例,其格式为使用小数点 (c=0)、小数点右侧有一位(nnn=100)、缓冲区的大小为六个字节 (ssss=0111)。 10)十六进制数转ASCII(HTA)将从输入字节 IN 开始的十六进制数转换为从 OUT 开始的 ASCII 字符。由长度LEN 分配要转换的十六进制数的位数。可以转换的ASCII 字符或十六进制数的最大数目为 255。  上图vb20=16#4E,vb21=16#2D,转换后VB30,VB31,VB32,VB33分别为4E2D。 11)ASCII转十六进制数(ATH)将从 IN 开始,LEN个长度的 ASCII字符转换为从 OUT 开始的十六进制数。可转换的 最大 ASCII 字符数为 255 个字符。如果VB0,VB1,VB2,VB3为3,5,8,6则转换后VB10=16#35,VB11=16#86。

    注意事项

    本文(关于PLC中字符与数据之间如何进行转换.doc)为本站会员(白大夫)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开