Processing을 사용하여 Arduino에서 얻은 센서 값을 실시간으로 표시

10280 단어 ArduinoProcessingtech
이것의 계속.
Arduino에서 얻은 CO 농도를 실시간으로 표시할 수 있습니다.
디지털 디스플레이는 Processing을 사용합니다.Processing은 전자 예술과 시각 디자인에 사용되는 프로그래밍 언어이다.사우나 도구에 잘 어울려요!
* 관심 분야 개발 기록일산화탄소는 생명과 관계가 있으니 스스로 책임지세요.

구조

  • Arduino를 통해 얻은 센서 값을 직렬 포트로 보내기
  • Processing을 통해 직렬 포트 열기
  • 수신된 문자열 표시
  • 소스 코드


    Arduino의 소스 코드는 지난번과 거의 같다.
    Arduino
    #include "MQ7.h"
    
    int counter = 0;  // counterという名前の変数を用意して、0をセットする
    
    const int AOUTpin=0;//the AOUT pin of the CO sensor goes into analog pin A0 of the arduino
    const int DOUTpin=8;//the DOUT pin of the CO sensor goes into digital pin D8 of the arduino
    
    int limit;
    int value;
    
    MQ7 mq7(A0, 5.0);
    
    void setup() {
      
      Serial.begin(9600);             // シリアル通信の準備をする
      while (!Serial);                  // 準備が終わるのを待つ
    
      pinMode(DOUTpin, INPUT);//sets the pin as an input to the arduino
    
    }
    
    void loop() {
      
      float analog_0 = analogRead(AOUTpin);
      float voltage_0 = (analog_0*5)/1024;
      
      limit = digitalRead(DOUTpin);
      
      Serial.print("CO = ");
      Serial.print(mq7.getPPM());
      Serial.print(" ppm");
      Serial.println("");
      delay(500);
    }
    
    Processing 코드가 새로 추가되었습니다.
    import processing.serial.*;
     
    Serial Port;
    String Text = "";
    int lf = 10;    // ASCII return 
    
    void setup() {
      
      // list available serial port  
      printArray(Serial.list());
      
      Port = new Serial(this, "/dev/cu.usbmodem14101", 9600);
      Port.clear();
      Text = Port.readStringUntil(lf);
      Text = null;
      
      size(1024, 720);
      Port.bufferUntil(10);
    }
    
    void serialEvent(Serial Port) {
      Text = Port.readStringUntil(10);
    }
    
    void draw() {
      background(0, 0, 0);
      textAlign(CENTER);
      text(Text, width/2, height/2);
      textSize(100);
    }
    
    printArray(Serial.list());에 사용된 직렬 포트 목록을 확인할 수 있습니다.
    (Mac의 경우) USB 케이블을 삽입하십시오. 직렬 포트의 값이 변할 수 있으니 주의하십시오.Windows의 경우 COM 포트를 선택할 수 있습니다(내 생각).
    통째로 여기 있다.
    https://github.com/johiroshi/arduino_mq7_processing

    금후의 일


    Processing으로 도표화할지 말지는 논의 중이지만 아마 적합하지 않을 것 같다.Processing은 전자 예술에 적합합니다.

    좋은 웹페이지 즐겨찾기