?>

Hard Copy World

HCW

Q&A

Home > Forum >

Q&A

아두이노 이더넷 자바 소켓통신 질문드립니다.!

페이지 정보

작성자 좋은망구 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일16-04-01 17:25 조회2,486회 댓글1건

본문

톰켓을 이용해 자바 소켓서버를 만들었습니다.

저희가 하고싶은것은 이더넷쉴드(W5100)를 이용해 측정값을 서버로 전송하고 싶습니다.

 

1. 아두이노 소켓통신 코드(아두이노가 클라이언트)를 어떤식으로 구성해야할지 알고 싶습니다.

 

2. 소켓구현시 어떤식으로 측정값을 전송해야하는지 알고 싶습니다.

 

3. 혹시 소켓통신이 아닌 다른 방법이 있는지 알고 싶습니다.

 

-------------------------------------------------- 자바 서버 소스 ---------------

import java.io.IOException;

..

 

@ServerEndpoint("/broadcasting")

public class Broadsocket {

 

private static Set<Session> clients = Collections

.synchronizedSet(new HashSet<Session>());

 

@OnMessage

public void onMessage(String message, Session session) throws IOException {

System.out.println(message);

synchronized (clients) {

// Iterate over the connected sessions

// and broadcast the received message

for (Session client : clients) {

if (!client.equals(session)) {

client.getBasicRemote().sendText(message);

}

}

}

}

 

@OnOpen

public void onOpen(Session session) {

// Add session to the connected sessions set

System.out.println(session);

clients.add(session);

}

 

@OnClose

public void onClose(Session session) {

// Remove session from the connected sessions set

clients.remove(session);

}

}

댓글목록

최고관리자님의 댓글

최고관리자 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 작성일

1. 아두이노 소켓통신 코드(아두이노가 클라이언트)를 어떤식으로 구성해야할지 알고 싶습니다.
==> 이더넷 라이브러리 설치하면 여러가지 예제가 같이 설치됩니다. 그 중 WebClient 예제를 활용하시면 될 듯 합니다.
 https://www.arduino.cc/en/Reference/Ethernet

2. 소켓구현시 어떤식으로 측정값을 전송해야하는지 알고 싶습니다.
==> 보통 GET, POST  방식 중 하나를 사용합니다. 작은 데이터라면 GET 방식으로 URL에 표현해서 보내면 됩니다.
 
3. 혹시 소켓통신이 아닌 다른 방법이 있는지 알고 싶습니다.
==> TCP/UDP 통신만 가능하다 보시면 될 듯합니다.