ASP.NET网页到设备连接到服务器的USB(COM)端口

时间:2009-05-19 00:36:02

标签: asp.net vb.net usb arduino

我正在研究从网站向Arduino板发送命令的方法。 Arduino板通过USB端口(COM端口)连接到计算机。

我已经设法使用VB.NET程序连接和控制电路板。我还写了一个VB.NET类,可以实例化COM连接并发送和接收消息。

我的下一步是基本上创建一个程序,作为我的Web服务器(在Windows Vista上运行的IIS 7)和Arduino板之间的代理。当用户访问我的ASP.NET页面时,该页面将向代理发送命令以打开COM连接。当连接打开并准备就绪时,我可以向代理发送命令。反过来,代理会将这些命令发送到电路板并监听它从电路板收到的响应。然后,代理将这些消息传递回ASP.NET页面。

我有几个问题,希望小组能帮我回答......

  1. 我采用这种方法是正确的方向吗?有更简单或更有效的方法吗?

  2. 我看到的主要问题是,如果第二个用户打开网页并尝试打开COM端口,则会出现错误。这会导致第一次连接失败吗?我想我可以先检查端口是否已被使用,并向第二个用户发送消息。

  3. 我还有其他潜在的挑战吗?

1 个答案:

答案 0 :(得分:1)

不是将连接对象存储在HttpSessionState中,而是将其存储在HttpApplicationState中,以便所有用户都可以访问它。

您需要小心同步对COM端口的访问,以避免单个HTTP请求启动的串行通信混淆并混淆Arduino。