我即将开始开发一个小型应用程序(C#),通过串口与PLC和测试单元进行通信--这是我第一次进入这个领域。
本质上,我将向PLC发送一个启动操作的信号,然后等待来自测试单元(将与PLC独立通信)的操作结果返回ASCII字符串。
根据字符串的内容,我可能想听PLC发出的信号.
这对我来说都是新的,所以现在,我只是在研究System.IO.Ports.SerialPort;离题:有第三部分产品,而不是简化了与串口的交互,还是内置类就像您所能得到的一样好?我考虑的是易用性,而不是更好的特性。
然而,硬件还需要几个星期才能进行开发和测试,所以我想知道如何模拟串口之间的通信,以便开始开发我的应用程序?。
我还不知道PLC和PC是如何通信的--我知道它将是二进制的,而不是文本,但现在,我只知道这些。
发布于 2011-04-12 06:19:25
将你的串口连接到一个接口后面,这样你就可以根据这个接口对你的应用程序进行编码,然后用一个“假”实现进行测试。当你有了真实的硬件之后,你可以对接口的“真实”实现进行编码,然后换掉那个假的。
例如,您将有一个接口
public interface ISerialComms
{
void SendMessage(string message)
}
你可以用一个假的实现来对你的应用程序进行编程:
public class FakeSerialComms : ISerialComms
{
public void SendMessage(string message)
{
//some implementation
}
}
希望这能帮上忙!
发布于 2011-04-12 06:23:51
过去,我在使用com0com时取得了一些成功。
发布于 2011-04-12 06:41:45
有两个软件,我已经找到了宝贵的做串口工作。
免费串行口监视器
http://www.serial-port-monitor.com
尽管这个名字很俗气,但实际上还是很有用的。请注意,如果要拔掉USB到串行转换器的插头,应该让它停止监听您的端口。否则它就会崩溃(嗯.在退出时无限期地等待,这很烦人)。它不需要把自己放在串行连接的中间去嗅探数据。它使用Win32 API监视IO。
Franson串行口工具
http://franson.com/serialtools/
或者..。任何回送软件真的。外面有很多。这允许您发送数据并在软件中接收数据。如果您最后做了任何GPS工作,Franson也有一个很好的GPS模拟器,所以您不必一直坐在外面调试代码。
最后,如果您已经经受够了内置的串行类及其可怕的缺点,那么您需要进行替换,直接使用Win32 API将花费很长时间。
CommStudio
我发现CommStudio绝对是坚不可摧的。坦率地说,在花了5个月的时间研究和购买其他选项后,它是唯一一个与可移动USB适配器完美工作的。当设备重新插入时,所有其他解决方案都会出现问题。您可以在此下载他们的免费“速递”版本:http://www.componentsource.com/products/commstudio/downloads.html?rv=42917
https://stackoverflow.com/questions/5636564
复制