三菱PLC和电子天平通讯 点击:1311 | 回复:7



medco501

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 49回
  • 年度积分:0
  • 历史总积分:143
  • 注册:2008年1月12日
发表于:2009-05-27 13:38:38
楼主
我用RS指令成功读取到天平的称量数据,数据格式为ASCII字符串,但不知道如何把这个字符串转换成浮点数格式保存在一个32位的D存贮器中,因为我要把这个数据传到上位机中进行计算,而字符串不能进行数学运算,我用HEX指令好像不行啊!请问各位达人我如何实现?不胜感激!



haha_gao

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 635回
  • 年度积分:0
  • 历史总积分:848
  • 注册:2004年9月29日
发表于:2009-05-27 15:03:52
1楼

首先要确定位数

ASCII码格式为$30=0

可以把前一位屏蔽

剩下后面一位在计算

eagertoma

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 122回
  • 年度积分:0
  • 历史总积分:146
  • 注册:2008年10月19日
发表于:2009-05-27 20:24:03
2楼
你使用的是什么型号的PLC

medco501

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 49回
  • 年度积分:0
  • 历史总积分:143
  • 注册:2008年1月12日
发表于:2009-05-28 17:27:02
3楼
我用的是FX2N,天平输出数据格式为:“空格 符号位 1 2 3 4 。 5 6 空格 G S CR LF”,我现在就是不知道如何“掐头去尾”把符号位和数据位提取出来放到寄存器中,而且符号紧跟在数字前面,比如“-23。11”而不是“-0023。11”,正号时不显示,比如“123.11”而不是“+0123。11”。我知道这个地方高手云集,一定能帮我解决这个小问题的哈^_^,再次谢过啦

medco501

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 49回
  • 年度积分:0
  • 历史总积分:143
  • 注册:2008年1月12日
发表于:2009-05-28 21:43:03
4楼

不好意思,我上面说的不对,天平输出数据格式为:“空格 符号位 1 2 3 4 。 5 6 空格 G S CR LF”,这种格式是打印输出格式,这种格式打印出来很整齐,就是其中“符号位 1 2 3 4 。 5 6”这几位如果显示是“1.23”的话,“1.23”前面的位数是用空格代替的,而不是用0,即“空格空格空格空格1.23”,而不是“+0001.23”,这种显然不能用减30来处理,因为正负号和空格减30后分别是 er si 2  而且天平称量的位数不确定,最小读数是0.00,前面都是空格,这个就不能用固定的位数来套,怎么动态准确的读取对我来说是个问题啊

weikong32

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 77回
  • 年度积分:0
  • 历史总积分:103
  • 注册:2009年5月03日
发表于:2009-07-07 16:20:24
5楼

不能发图片的  我有这种类似转化程序  虽然方法有点笨但能转换出来   我的QQ64406908 发给你看看

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2009-07-14 20:55:50
6楼

首先。你的是2N。程序必然少不了[SMOV]指令。可以很方便地把0012.30转换成D0=12;D1=30。

剩下的事情就是扩展符号、小数的转换了。

假如你上面写的1234。56是阿吉斯码的话就第一先做转换。

qinyingtai

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 61回
  • 年度积分:0
  • 历史总积分:135
  • 注册:2009年4月11日
发表于:2009-07-15 07:54:08
7楼

你解决没?没解决加我q358223129,这个做得多了


热门招聘
相关主题

官方公众号

智造工程师