2014-01-22 2 views
0

기본적으로 이더넷을 통해 라우터에 연결된 Arduino UNO가 있습니다. 내 서버에 IP를 기록 했으므로 데이터를 내 arduino에 푸시하고 싶습니다. 나는 데이터의 흐름이 데이터를 전송하는 것 (가장 좋은 방법은 확실하지 않다. 포트를 열어 데이터를 스트리밍해야 하는가?)을 라우터에 전달한 다음 라우터에 할당 된 로컬 주소의 Arduino로 전달한다.서버에서 라우터로 Arduino로 데이터 전달

라우터에 로그인하지 않고 라우터 정보를 전달하도록 라우터에게 어떻게 지시 할 수 있습니까? 이 연습의 요점은 코드로 모든 것을하고 라우터에 로그인하고 설정하는 것과 같은 다른 활동을하지 않는 것입니다. 내 Arduino 기록 온도를 가지고 있기 때문에이 작업을 수행하고 싶습니다. 데이터를도 또는 화씨 또는 비자에서 보내는 것으로 전환해야한다면 데이터를 상태로 푸시하려고합니다.

+0

더 나은 방법은 빈도로 서버를 호출하여 데이터 형식을 확인하는 것입니다. 인터넷에서 Arduino 포트에 연결해야하는 경우 라우터에서 포트 포워딩을 구성해야합니다. – Ramesh

+0

이 방법이 없습니까? http 포스트를 보내서 통신하는 것은 가능합니까? arduino가 업데이트를 즉시 작성하고자하므로 많은 요청을 할 것이므로 네트워크 트래픽을 줄이려고했습니다. – bubblebath

답변

2

publish/subscribe 패턴이있는 소켓 서버를 사용합니다. 아마도 여러 가지가 있지만 XSockets.NET을 가장 잘 압니다.

몇 시간 전에 저는 실제로 Arduino를 XSockets에 연결하고 웹 페이지와 내 arduino를 두 가지 방법으로 전달했습니다.

내가 수행하고 때 나는 GitHub의에 코드를 삽입하지만, 당신이 여기 개념을 보여주는 비디오를 볼 수 있습니다 : 당신은 당신의 아두 이노만큼 모든 포트를 열 필요가없는 및 ​​서버에 The Stuff For You Starts At 3:20

+0

OMG 이것은 최고입니다. 다른 사람이 대안으로 돌아 오는 지보고 싶기 때문에 나는 chossen 답을 선택하지 않았습니다. 그래도 많은 감사와 만약 당신이 github의 물건을 넣어 전적으로 휘몰아 것입니다 : D – bubblebath

+0

고마워. 내가 arduino/netduino와 브라우저 등 사이에 게시/구독하는 방법에 대한 예제와 github에 모든 코드를 넣어 것입니다. 나는 모든 것을 먼저 써야하기 때문에 일주일이나 이틀 소요될 수 있습니다 :) – Uffe

0

을 동일한 로컬 네트워크. IP 주소는 arduino를 포함하여 네트워크상의 모든 장치를 매핑하기 때문에.

라우터의 포트를 열려면 로컬 네트워크 외부 사람이 네트워크의 서버에 액세스하도록해야합니다. 포트 포워딩이 존재하는 이유는 누군가가 자신의 공용 IP (라우터)에 데이터 패킷을 보낼 때 패킷을 보낼 로컬 IP를 알 수 있기 때문입니다. 그런 다음 포트를 로컬 IP로 포워딩하지 않으면 라우터가 해당 포트의 모든 패킷을 해당 로컬 IP 주소로 보내는 것을 의미합니다.

또한 자신의 서버 프로그램 (예 : 서버로 작동하는 Java 프로그램)을 만들어야합니다.

나는 당신이 찾고있는 것과 비슷한 것을 만들었지 만, 대신 wifi 방패를 사용합니다. 나는 그것과의 연결을 유지하는데 약간의 문제가 있었지만, 지금까지 그것은 wifi 라이브러리에 문제가있는 것으로 보인다.

당신은 여전히하지만 그것에서 뭔가를 배울 수 있습니다
Maintaining communication between Arduino and Java program

당신이 자바 서버는 일반적으로 작동하는 방법에 대한 자세한 내용을 알고 싶다면, 여기에 기초를 많이 설명하는 좋은 튜토리얼입니다
http://www.thenewboston.org/watch.php?cat=25&number=38