就目前常用技术栈讨论与硬件交互的几个解决方案

一、目前常用的硬件通信

1、串口通信(Serialport)

2、socket通信

3、蓝牙

4、无线模块,http

5、OPC

二、常用通信开发技术

1、C#winform开发的桌面程序是大家最常见的开发技术,socket通信与http是大家常见的其他例如java、PHP都能轻松应对,对应串口通信、蓝牙通信就相对困难或者不稳定,而C#提供专门的组件可以轻松应对这是C#得天独厚的优势

2、目前出现一些新的技术栈,比如jQuery现在提供了一些api也能实现相关通信,比如最新electron提供的api已经能够很好的解决相关问题

三、就以上问题做几个组合解决方案

通过Cefsharp有谷歌提供浏览器内核来开发的浏览器组件,来实现与硬件交互,然后通过websocket与后台通信最终实现数据交互

方案1、在开发web项目启动器时(后续简称启动器),集成websocket通信实现web端与启动器进行交互来获取硬件设备的数据,然后进行相关操作。

方案2、集成WCF服务,WCF直接作为接口给web端进行数据操作,实现web项目与硬件设备数据交互,然后进行后续相关操作。

目前很多应用场景用到与硬件交互的场景,如何避免与硬件交互复杂度,大家可以作为参考,而且现在electron非常强大还可以做桌面系统非常值得大家研究学习

前端通信参考: https://www.electronjs.org/
后端浏览器内核参考: 浏览器内核Git地址https://github.com/cefsharp/CefSharp

你可能感兴趣的:(方案,B/S与C/S混合架构,c#,开发语言,jquery)