웹 사이트에서 Arduino 보드로 명령을 보내는 방법을 연구 중입니다. Arduino 보드는 USB 포트 (COM 포트)를 통해 컴퓨터에 연결됩니다.ASP.NET 웹 페이지에서 서버의 USB (COM) 포트에 연결
저는 VB.NET 프로그램을 사용하여 보드에 연결하고 제어 할 수있었습니다. 또한 COM 연결을 인스턴스화하고 메시지를 보내고받을 수있는 VB.NET 클래스를 작성했습니다.
내 다음 단계는 기본적으로 내 웹 서버 (Windows Vista에서 실행되는 IIS)와 Arduino 보드 사이의 프록시 역할을하는 프로그램을 만드는 것입니다. 사용자가 내 ASP.NET 페이지로 이동하면 페이지에서 프록시에 명령을 보내 COM 연결을 엽니 다. 연결이 열려 있고 준비가되면 프록시에 명령을 보낼 수 있습니다. 차례로 프록시는 이러한 명령을 게시판에 보내고 게시판에서받은 응답을 수신합니다. 프록시는이 메시지를 다시 ASP.NET 페이지로 전달합니다.
나는 내가 그룹이 나에게 답 수 있기를 바랍니다 몇 가지 질문 ...
- 이 방법으로 올바른 방향으로 I 오전 있나요? 이 작업을보다 쉽고 효율적으로 수행 할 수있는 방법이 있습니까?
두 번째 사용자가 웹 페이지를 열고 COM 포트를 열려고하면 오류가 발생한다는 것이 가장 큰 문제입니다. 이로 인해 첫 번째 연결이 실패하게됩니까? 포트가 이미 사용 중인지 먼저 확인하고 두 번째 사용자에게 메시지를 제공 할 수 있다고 생각합니다.
나는 실종되었거나 보이지 않는 다른 잠재적 인 문제가 있습니까? 이것은 모든 사용자가 액세스 할 수있게
빠른 업데이트 : 이제 asp.net에서 직접 직렬 포트에 연결할 수 있다는 것을 알고 있습니다. 그러나 나는 페이지를 게시 할 때마다 연결을 열고 닫고 싶지 않습니다. http가 stateless이기 때문에, 나는 http 연결만으로 시리얼 연결을 유지할 수 없다. 사용자 세션이 켜져 있거나 사용자가 로그 아웃하거나 닫기 명령을 보내는 동안 연결을 열어보고 싶습니다. 고맙습니다! – Andres
그것은 가능한 해결책을 찾은 것 같습니다 .. 단순히 세션 변수에서 내 보드에 연결하는 데 사용하는 개체를 넣은 다음 CTypeing에 의해 세션 변수를 참조하면 트릭을 수행하는 것처럼 보입니다! 내가 생각한 것에 대한 간단한 해결책은 복잡한 문제가 될 것입니다. 프록시 앱이 필요 없음 ... 그러나 전문가의 생각에 다른 솔루션이 무엇인지 들어보고 싶습니다. – Andres