반응형

아두이노 Arduino/파이썬(Python) 8

아두이노 온도, 습도 값 파이썬으로 그래프 출력 - 커서 값 출력하기(Arduino, Cursor, Python, Cordination, graph)

목차 파이썬으로 그래프 출력 - 커서 값 출력하기#1 이전 글에서 아두이노(Arduino)를 사용하여 온도와 습도 데이터를 랜덤으로 생성하고, 이를 시리얼 통신을 통해 컴퓨터로 전송하였습니다. 컴퓨터는 받은 데이터를 파이썬(Python)을 이용해 그래프로 나타냈으며, 이번 프로젝트에서는 그래프 위에 마우스를 올렸을 때 해당 위치의 온도와 습도 값을 표시하는 이벤트 처리 코드를 작성하는 것입니다. 이를 구현하기 위한 방법을 자세히 설명하겠습니다. 먼저, 아두이노는 온도와 습도 센서를 통해 데이터를 수집합니다. 이 데이터는 아두이노의 시리얼 포트를 통해 컴퓨터로 전송됩니다. 파이썬에서는 pyserial과 같은 라이브러리를 사용하여 이 시리얼 데이터를 읽을 수 있습니다. 데이터를 읽은 후, 파이썬에서는 mat..

아두이노 온도, 습도 값 파이썬으로 그래프 출력하기, 일정 개수만 출력, 버튼으로 그래프 만들기

목차 아두이노 온도, 습도 값 파이썬으로 그래프 출력하기 앞 포스트에서 제작한 프로젝트와 동일하게 센서 없이 아두이노에서 랜덤으로 온도와 습도를 만들어서 시리얼 통신으로 보냅니다. 아두이노 코드는 아래와 같습니다. 아두이노 코드>> void setup() { // 시리얼 통신을 시작합니다. 보드에 맞는 속도로 설정하세요. Serial.begin(9600); } void loop() { // 가상의 온도와 습도 값을 생성합니다. // 예를 들어, 온도는 20~30도 사이, 습도는 40~60% 사이의 값으로 설정할 수 있습니다. float temperature = 20 + random(100) / 10.0; // 20.0 ~ 29.9 사이의 값 float humidity = 40 + random(200) /..

아두이노 온도, 습도 값 파이썬으로 그래프 출력하기(Arduino, Python, Serial, Graph)

목차 아두이노 온도, 습도 값 파이썬으로 그래프 출력하기#1 우선 제가 가지고 있는 것이 아두이노 보드 밖에 없기 때문에 센서 없이 임의로 데이터를 만들어서 온도와 습도 값을 생성하겠습니다. 아두이노 코드>> void setup() { // 시리얼 통신을 시작합니다. 보드에 맞는 속도로 설정하세요. Serial.begin(9600); } void loop() { // 가상의 온도와 습도 값을 생성합니다. // 예를 들어, 온도는 20~30도 사이, 습도는 40~60% 사이의 값으로 설정할 수 있습니다. float temperature = 20 + random(100) / 10.0; // 20.0 ~ 29.9 사이의 값 float humidity = 40 + random(200) / 10.0; // 40...

Ping이란? CMD, 파이썬으로 예제 실습하기(Window OS)

목차 핑(Ping)이란? 핑(Ping) 명령어는 네트워크 장치 간의 연결 상태와 통신 속도를 검사하는 데 주로 사용되는 도구입니다. 핑은 인터넷 제어 메시지 프로토콜(ICMP) 에코 요청 메시지를 목적지 컴퓨터에 보내고 응답을 기다리는 방식으로 작동합니다. 이 과정을 통해 두 가지 주요한 정보를 얻을 수 있습니다: 응답이 얼마나 반환되었는지, 그리고 그 응답이 반환되기까지 얼마나 걸렸는지입니다. 1. 시간 초과(Timeouts)와 패킷 손실(Packet Loss) 응답이 없거나 지연되는 경우, 이를 '시간 초과'라고 합니다. 이는 대상 장치가 오프라인이거나, 네트워크 경로에 문제가 있음을 나타낼 수 있습니다. 패킷 손실은 보낸 패킷 중 일부가 목적지에 도달하지 못하는 경우를 말합니다. 이는 네트워크 혼잡..

[Python] 파이썬 실행파일(exe) 만들기(Pyinstaller, Batch file)

목차 Pyinstaller 설치하기 파이썬으로 작성한 코드를 파이썬 툴이 없는 환경에서 실행파일 만으로 실행하고 싶을 때 사용하는 방법입니다. 우선 실행 파일을 만들기 위해서는 pyinstaller 라는 라이브러리 설치가 필요 합니다. 아래와 같이 설치를 진행합니다. pip install pyinstaller 실행 파일 만들기(Exe file generation) 이번에 설치는 앞서 작성한 GPS파일(nmea)을 cvs 파일로 변환하는 예제 파이썬 코드를 변환할 생각 입니다. 해당 코드를 링크를 참조 하십시오(https://scribblinganything.tistory.com/625) 설치는 아래와 같이 간단한 명령으로 완료 됩니다. pyinstaller 파이썬파일명 제가 작성한 파일명은 nmea_to..

[아두이노] 파이썬 threading timer 로 주기적으로 LED 켜고 끄기(타이머, 인터럽트, Interrupt)

목차 [Arduino] Python threading timer 함수 이번 포스트에서는 파이썬의 스레딩(Threading)의 타이머(timer) 함수에 대해 알아보겠습니다. 타이머의 말 자체가 알려 주듯이 타이머는 정해진 시간(Time)이 지났을 때 사용자가 원하는 동작을 하게 도와주는 함수 입니다. Syntax는 아래와 같습니다. 인스턴스명 = threading.Timer(타이머시간, 실행시킬함수명) 인스턴스명.daemon = True 인스턴스명.start() 입력 값에 타이머 시간은 시간 단위이고 밀리초 (mili second)는 소수점 형식으로 표기하시면 됩니다. 실행 시킬 함수 명은 타이머가 시간이 되었을 때 구현할 함수 명을 입력 하시면 됩니다. 리턴 값을 인스턴스(Instance)에 입력 하시..

[아두이노] 파이썬 threading 함수로 통신하기 (threading, target, daemon

목차 [Arduino] 파이썬 threading 함수 사용법 thread 는 실이라는 의미가 있습니다. 파이썬(Python)에서 threading(쓰레드, 드레딩) 이란 CPU 칩이 여러개의 실로 구성되어 있고 한 줄 한줄 다른 일을 처리할 수 있는 것입니다. 일반적으로 코드를 작성하면 위에서 아래로 순차적으로 진행되는 데 하나의 작업이 진행되는 동안 다른 작업을 실행할 수 없습니다. 하지만 thread 를 사용하면 2개 3개 멀티플(Multiple) 한 동작을 동시에 할 수 있게 됩니다. threading 함수에서 사용하는 주인자는 2개 입니다. target : threading으로 동작 시킬 함수를 연결합니다. daemon : True 일 경우 메인 프로그램이 종료 시 threading 함수도 종료 ..

[아두이노]파이썬 Pyserial로 아두이노 문자, 실수, 정수 값 읽기(수신하기, 송수신, 통신)

목차 Arduino에서 보낸 값 컴퓨터에서 읽기: 실행 방법 앞서 포스터에서 PC에서 Pyserial로 명령을 보내었고 아두이노에서 해당 명령을 읽어서 LED를 켰다가 끄는 예제를 구현하였습니다. (https://scribblinganything.tistory.com/524) 이번 포스트에서는 아두이노에서 주기적으로 문자열(String), 정수(Integer), 실수(Float) 값을 컴퓨터로 송신하고 (USB 케이블로 시리얼통신 사용) 노트북은 해당 값을 읽어서 출력하는 예제를 실행합니다. 파이썬(Python)에서 송신하는 메세지를 출력하기 위해서는 파이썬에서 아래의 함수 사용이 필요 합니다. 1. readline 함수 : "\n" 엔터키(다음줄)가 들어올때까지의 버퍼에 저장된 데이터를 읽어 옵니다. ..

반응형