【Processing】 UDP 송수신

3013 단어 processingudp
첫글입니다^^
로봇 업계에서 엔지니어를 하고 있는 것입니다.
프로그램은 공부중이므로, 조언을 받을 수 있으면 기쁩니다!

개요



· 목적 : Processing을 이용한 UDP의 송신과 수신을 간이적으로 할 수 있도록 한다.
・내용:송신 버튼을 누르면 UDP 통신으로 수신의 로그에 기재된다.
· 준비 :
1. Processing 다운로드
2. 라이브러리 가져오기
3. 3. 코드 작성
4.4. 실행

실천



1. Processing 다운로드



다운로드는 코코에서

2. 라이브러리 가져오기



1. Processing을 시작하고 스케치/라이브러리 가져오기.../라이브러리 추가...로 이동합니다.

2. "UDP"와 "controlP5"를 설치하십시오.
  'Status'에 녹색 체크가 붙어 있는 'Name'을 선택하고 'Install'을 클릭.

    ※“ControlP5”는 Processing에 있어서의 GUI 컨트롤러의 일종입니다.




설치가 끝나면 완료입니다!

3. 코드 작성



  
 에서는 코드를 작성합니다.
  
송신측의 코드는 아래와 같습니다.

udpSend.pde
import hypermedia.net.*;
import controlP5.*;

UDP udp;
ControlP5 cp5;

final String IP = "localhost";
final int PORT = 1000;     //送信側のポート番号

String msg = "test_messege";   //UDPで送るコマンド

void setup() {
  size(200, 200);

  cp5 = new ControlP5(this);
  udp = new UDP( this, 2000 );

  ControlFont cf = new ControlFont(createFont("メイリオ",20));

  cp5.addButton("UDP_Msg")
    .setFont(cf)
    .setLabel("送信")
    .setPosition(50,50)
    .setSize(100,100);
}

void draw() {
  background(200);
}

void UDP_Msg(){
  udp.send(msg,IP,PORT);
}

수신측의 코드는 아래와 같습니다.

udpReceive.pde
import hypermedia.net.*;
import controlP5.*;

UDP udp;

final String IP = "localhost";
final int PORT = 2000;

void setup() {
  udp = new UDP(this, 1000);
  udp.listen( true );
}

void draw() {;}

void receive( byte[] data, String ip, int port ) {
  String message = new String( data );
  println( "receive: \""+message+"\" from "+ip+" on port "+port );
}

4. 실행



"실행 결과하면 아래 그림과 같이됩니다.
"송신"버튼을 누르면 receive에서받을 수 있음을 알 수 있군요!



 이상, 간단하게 소개했습니다.
질문이나, 어드바이스등이 있으면 부담없이 코멘트해 주세요.

여담



  PC의 벽지가 눈에 나쁘다고 말해집니다만, 이 색을 좋아합니다!

올해의 컬러 오브 더 이어 2019에 선정된 것이 'Living Coral(리빙 코럴)'입니다.
  
  ・PANTONE:16-1546 Living Coral
  ・칼라 코드:#FF6F61
  ・RGB:R255, G111, B97
  ・CMTK:C0, M65, Y54, K0

이 색을 올해는 많이 도입하면, 좋은 일 있을지도입니다!

좋은 웹페이지 즐겨찾기