基于Neuron实现一个串口透传插件

请问,基于Neuron实现一个串口透传插件【实时写串口,等串口返回值后,返给平台】的思路。应用方式:
1、平台通过mqtt写操作或http api 的写操作,发起串口透传;
2、串口透传插件收到写操作的值后,写串口,等待串口的返回值;
3、串口的返回值,如何能返给平台呢??

目前的问题是:mqtt写操作或http api 的写操作,都只是能获取到写成功或失败,无法获取到串口应答回来的内容;

如果不用mqtt写操作或http api 的写操作,还能有什么方式呢??

回复的话,你可以设计一个点位来接收回复

用mqtt写操作或http api 的写操作,返回的信息中,无法得到这个点位的信息呀。。

我的意思是,写入的时候,串口返回了,这个返回数据,可以作为一个特殊的tag给出。

是的。目前是这样设计的。
1个node中,添加1个group,在group中,添加了两个tag,一个tag【tag1】是要发给串口的数据,另一个是tag【tag2】是获取到串口返回的值;这两个tag的名称是固定的。

我的问题是:北向应用,如何能实时的写tag1的值,然后获取到tag2的内容。

目前Neuron代码中的mqtt和http api,应该都不行。有什么办法呢??

mqtt 插件订阅这个 group 不满足你的想法吗?订阅之后分别有读写主题和上报主题,可以从上报主题获取最新值;
更多自定义想法 可以用 neuronex 流规则实现;
开发插件的话需要你理解代码自行设计了。

1、neuronex 流规则,我不是非常了解,但感觉也实现不了“串口透传”的需求场景。请您简单描述一下呢??

2、开发插件,我们目前是这样干的,南向插件已经做了一个版本,我描述一下目前考虑的流程:
a、创建node【testnode】,插件是‘透传插件’,创建gourp【g1】和tag【tag1和tag2】;【tag1中设置了定时轮询串口的指令数据】
b、北向mqtt插件【mqtttest】,订阅【testnode】中的【g1】;
c、【mqtttest】定时推送【g1】中的【tag1和tag2】,tag2,就是透传返回的内容;
d、平台侧,根据业务需求,要实时给【testnode】透传新的指令,平台侧给mqtttest的写主题,对tag1 做写值操作,操作完成后mqtttest给写应答主题返回了写操作的结果。但这里没办法配置串口透传的应答结果。。这个就是我的问题。

如果要在写响应主题中获取点位最新值,需要你理解代码自行设计

嗯。这样就是需要实现一个自己的mqtt插件吧?

http api的写操作,我看了文档,也没办法实现上面我提到的串口透传的功能。也需要自己去理解代码进行修改代码吗?还是说,发起两次http api请求:
第一次:写tag1;
第二次:读tag2

是这样的思路吗?

对的;
api 读写还需要考虑数据实时性,要加同步读参数,否则读数据是上次缓存的的不一定是刚写之后的新数据。

明白了。。感谢。。