에듀이노-코딩교육 전문 쇼핑몰 에듀이노-코딩교육 전문 쇼핑몰

학교, 공공기관이라면 후불결제하세요!

 
현재 위치
  1. 게시판
  2. 묻고답하기

묻고답하기

기술문의 게시판입니다.

게시판 상세
제목 센서 3개를 연결해서 PLX에서 출력하려는 사람입니다.
작성자 성래 (ip:)
  • 작성일 2022-08-24
  • 추천 추천하기
  • 조회수 439

안녕하세요.

인터넷으로만 공부를 하다보니 여러 센서를 합쳐서 엑셀파일에 정리하는 것을 모르겠더라구요..

전문가 분들의 도움을 받고자 여기에 글을 올려봅니다!

 

제가 쓰려는 센서는 이산화탄소 센서, 조도센서, 산소센서를 사용해서 광합성량을 측정하려고 합니다.


PLX-DAQ-v2.10을 적용해서 이산화탄소 센서 코드는

#include <SoftwareSerial.h>

 

SoftwareSerial mySerial(13, 11);

unsigned char Send_data[4] = {0x11,0x01,0x01,0xED};

unsigned char Receive_Buff[8];

unsigned char recv_cnt = 0;

unsigned int PPM_Value;

 

void Send_CMD(void) {

  unsigned int i;

  for(i=0; i<4; i++) {

    mySerial.write(Send_data[i]);

    delay(1);

  }

}

unsigned char Checksum_cal(void) {

  unsigned char count, SUM=0;

  for(count=0; count<7; count++) {

     SUM += Receive_Buff[count];

  }

  return 256-SUM;

}

 

void setup() {

  pinMode(13,INPUT);

  pinMode(11,OUTPUT);

  Serial.begin(9600);

  while (!Serial) ;

  mySerial.begin(9600);

  while (!mySerial);

  Serial.println("CLEARDATA");

  Serial.println("LABEL,No.,ppm");

}

 

void loop() {

  Serial.print("Sending...");

  Send_CMD();

  while(1) {

    if(mySerial.available()) { 

       Receive_Buff[recv_cnt++] = mySerial.read();

      if(recv_cnt ==8){recv_cnt = 0; break;}

    }

  } 

  

  if(Checksum_cal() == Receive_Buff[7]) {

     PPM_Value = Receive_Buff[3]<<8 | Receive_Buff[4];

     Serial.write("   PPM : ");

     Serial.println(PPM_Value);

  }

   else {

    Serial.write("CHECKSUM Error");

  }

  delay(10000);

  Serial.print("DATA,TIME");

  Serial.print(",");

  Serial.println(PPM_Value);


산소센서 코드는

#include "DFRobot_OxygenSensor.h"


#define COLLECT_NUMBER    10             // collect number, the collection range is 1-100.

#define Oxygen_IICAddress ADDRESS_3


DFRobot_OxygenSensor Oxygen;

void setup() 

{

  Serial.begin(9600);

  while(!Oxygen.begin(Oxygen_IICAddress)) {

    Serial.println("I2c device number error !");

    delay(1000);

  }

  Serial.println("I2c connect success !");

}


void loop()

{

  float oxygenData = Oxygen.ReadOxygenData(COLLECT_NUMBER);

  Serial.print(" Oxygen concentration is ");

  Serial.print(oxygenData);

  Serial.println(" %vol");

  delay(1000);

}


조도센서는 코드 없이 그냥 프로그램만 설치하라고 되어잇는데.. 이3개를 합쳐서 한 아두이노에서 작동을 시켜 PLX로 출력값을 받아보고 싶은데


전문가분들의 도움을 받고싶습니다.



게시글 신고하기

신고사유

신고해주신 내용은 쇼핑몰 운영자의 검토 후 내부 운영 정책에 의해 처리가 진행됩니다.

평점 0점
첨부파일
비밀번호 수정 및 삭제하려면 비밀번호를 입력하세요.
  • 에듀이노 개발팀 2022-08-25 0점
    수정 삭제 댓글
    스팸글 안녕하세요 에듀이노 개발팀입니다.

    해당 제품에 대한 제어코드 및 아두이노환경에 대한 정보는 제공해드릴 수 있으나,

    PLX로 정보를 받아오는 과정에 대한 정보는 보유하고 있지 않아 정확한 정보를 제공해드리기 어려운점 양해부탁드리겠습니다.

    감사합니다.
  • 이등병 2022-08-25 0점
    수정 삭제 댓글
    스팸글 여기 링크 보시면 방법이 나오긴하는데 참고해보세요 !

    https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=etsea&logNo=222083691447

스팸신고 스팸해제

댓글 수정

비밀번호 :

수정 취소

/ byte

비밀번호 : 확인 취소

댓글 입력

댓글달기이름 :비밀번호 : 관리자답변보기

확인

/ byte

왼쪽의 문자를 공백없이 입력하세요.(대소문자구분)

에게만 댓글 작성 권한이 있습니다.

댓글 입력

댓글달기이름 :비밀번호 :

확인

/ byte

왼쪽의 문자를 공백없이 입력하세요.(대소문자구분)

에게만 댓글 작성 권한이 있습니다.

«
»