반응형

개발자/Arduino 176

아두이노를 활용한 스마트 기기 제어 시스템 개발 교육과정

아두이노를 활용한 스마트 기기 제어 시스템 개발 소프트웨어 교육용 디바이스로 많이 알려진 아두이노 플랫폼에서 센서 데이터와 디바이스 제어 방법을 학습합니다. 이를 위해 오픈 소스 하드웨어 소프트웨어 산업에 대해 이해하고, 아두이노 개발환경에 대해 배웁니다. 다양한 센서와 액츄에이터를 연결하여 데이터로 수집하고, 수집한 데이터를 분석하여 액츄에이터를 제어하는 방법을 알아봅니다. 아두이노 시스템을 IoT에 활용하기 위해 통신 시스템을 이해하는 것은 필수적인 일이라 여러가지 무선 통신 방법을 학습합니다. 아래 교육과정을 참고하세요. 구분 시간 교육내용 1일 4시간 오픈 플랫폼 개발 환경 구축 및 디바이스 제어 (오픈 플랫폼 개발 환경 구축) - 아두이노 소개 - 아두이노 플랫폼 - 아두이노 시작하기 - 아두이..

개발자/Arduino 2021.09.08

아두이노 INA219 DC 전류 센서 사용하기

아두이노 DC 전류 측정 INA219 전류 센서 사용하기(INA219 High Side DC Current Sensor Breakout - 26V ±3.2A Max -) INA219B 브레이크아웃 보드와 INA219 FeatherWing은 모든 전력 모니터링 문제를 해결합니다. 2개의 멀티미터로 어려움을 겪는 대신 이 브레이크아웃을 사용하여 1% 정밀도로 I2C를 통한 높은 측 전압 및 DC 전류 소모를 모두 측정할 수 있습니다. 왜 하이사이드인가? 당사의 전류 패널 미터와 같은 대부분의 전류 측정 장치는 로우 사이드 측정에만 적합합니다. 즉, 배터리를 사용하지 않으려면 대상 접지와 실제 접지 사이에 측정 저항을 붙여야 합니다. 저항 양단의 전압 강하는 전류 소모에 비례하기 때문에 접지 기준이 전류 변화..

개발자/Arduino 2021.07.25

nano 33 iot Serial Port Outputs make unstable WiFi Connection

nano 33 iot Serial Port Outputs make unstable WiFi Connection Nano 33 IoT 보드에서 타이머 인터럽트와 함께 Serial Port 출력을 자주 사용하는 것은 wifi 연결을 불안정하게, 그러니까 자주 연결을 끊어지게 만든다. 자세한 원인은 아직 확인중이라서 모르겠는데 테스트를 해보니 확실히 드러난다. 1초 주기마다 카운터를 증가시키는 타이머 인터럽트에서 씨리얼 모니터로 타이머 값을 프린트 하는 코드는 아래와 같다. //Here Start Timer function //this function gets called by the interrupt at Hertz void TC5_Handler (void) { //YOUR CODE HERE time_tic..

개발자/Arduino 2021.05.26

Nano 33 IoT WiFi 연결 불안정을 해결하는 코드

Nano 33 IoT WiFi 연결 불안정을 해결하는 코드 어떤 방법을 무엇을 시도하든 WiFiNINA를 사용하여 안정적인 WiFi 연결을 관리할 수 ​​없습니다. 평균 12 시간 동안 Nano는 알 수 없는 이유로 연결이 끊어지고 다시 연결해야 합니다. 평균 30 시간 동안 2 분 안에 재 연결이 불가능하고 Watchdog이 나노를 재설정 한 다음 재 연결이 다시 작동합니다. 내 액세스 포인트는 Fritz Box 7490입니다. 채널을 변경하지 않도록 AP를 구성했습니다.이 경우에도 연결이 끊어지지만 내 액세스 포인트는 정의된 채널에 남아 있습니다. 비교를 위해 두 번째 나노 33을 리피터 FritzRepeater 1200에 연결했습니다. Nano 33은 모두 최신 펌웨어가 설치되어 있으며 "firmw..

개발자/Arduino 2021.05.20

Arduino MQTT 사용자 ID와 password로 mqtt 브로커 연결

Arduino MQTT 사용자 ID와 password로 mqtt 브로커 연결 MQTT 사용자 subscriber 등록 후 메시지 송 수신할 때 사용자 id와 password로 인증하는 예제 코드다. 물론 사용하기 전에 다음과 같은 코드는 알고 있다고 가정한다. mqttServer = "******"; mqttPort = 1883; mqttUser = "******"; mqttPassword = "***"; 아래는 pubsubclient 라이브러리를 사용하는 예제 코드다. 마지막 남은 일은 mqtt 서버와 통신하여 정해진 용량만큼 액체를 배출하는 일이다. 어떤 일이든 끝날 때까지는 끝난 게 아니라서 집중한다. 오직 하나만 제대로 한다. 정확히 한 개, 하나, 한 마리만, 한 가지 일만 제대로 한다. 그러면..

개발자/Arduino 2021.05.17

미세먼지 측정기 센서와 커넥터 연결 - Harness

미세먼지 측정기 센서와 커넥터 연결 - Harness PCB 조립 후 PCB 위에 여러 센서 커넥터를 센서와 연결한다. 직접 연결하는 방법도 있지만 조립하고 확장할 여지를 남겨두기 위해 모든 연결 센서를 커넥터로 연결하도록 작업한다. 원래 전선 연결 작업은 하네스(Harness)라고 하여 도면, 지그, 전용 장비가 필요하고 전문적인 과정을 거쳐야 하지만 그냥 간단하게 하기로 한다. 여기서 하네스에 대해 잠깐 알아보면 하네스(Harness) 정의 회로나 기기의 상호간을 전기적으로 접속 및 이탈시키는 접속물을 하네스 (Harness), 또는 컨넥터 (Connector)라고 한다. 하네스는 2개소 이상의 회로 사이를 결합 및 이탈을 가능하게 하며 일반적으로 Wire(전선), 단자(Terminal, Contac..

개발자/Arduino 2021.05.13

How to prevent SSD1306 allocation failed error

결론은 SSD1306 사용할 때, 특히 복잡한 프로그램 개발 할 경우 아래와 같은 코드에서 말 그대로 "SSD1306 allocation failed" 메시지가 나올 경우 무조건 메모리(SRAM) 문제니까 당황하지 말고 코드를 줄여야 한다. 일단 변수 선언을 줄이고 테스트를 위해 준비한 코드를 지운다. 스트링은 가능한 짧게 줄이거나 없앤다. 그러면 에러는 사라진다. // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x64 Serial.println(F("SSD1306 allocation failed"..

개발자/Arduino 2021.04.30

미세먼지 측정기 오늘 잘 돌아가는 코드

강력하고 정확한 것 두 가지를 만족시키기는 어렵다. 힘이 들어가면 빗나가거나 정확한 지점에 힘을 집중할 수 없기 때문이다. 무엇보다 힘을 빼야만 정확한 지점에 집중할 수 있다. 가끔은 강력하면서도 정확하게 할 때가 있다. 그런 시간을 넘기 직전에 있는지도 모른다. 하~ 힘들다. #include #include #include #include #include #include #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels // Declaration for an SSD1306 display connected to I2C (SDA, SCL pins) ..

개발자/Arduino 2021.04.30

Nano 33 IoT 보드에서 5V 출력 사용하는 방법

결론: 보드 뒷면의 두 점을 솔더링으로 할 경우 반드시 USB 전원을 사용해야지만 5V 출력이 나온다. 외부 전원, 그러니까 Vin과 GND를 외부 전원에 연결할 경우 죽어도 5V를 쓸 수 없다. Nano 33 계열의 보드(Nano 33 IoT, Nano 33 BLE와 BLE Sense)들은 기본적으로 DC 3.3V로 동작한다. 5V 핀은 NANO 33 IoT에서 기본적으로 분리되어 있다. 이전 Arduino 보드는 5V I/O 신호를 사용하기 때문에 예방 조치로 분리하는 방식으로 개발하였다. 이렇게 하면 사용자는 3.3V 대신 5V로 회로에 전원을 공급하여 실수로 보드를 손상시키지 않는다. 해당 핀의 5V는 다음 두 가지 조건이 충족되는 경우에만 사용할 수 있다. VUSB로 표시된 두 개의 패드에 납땜..

개발자/Arduino 2021.04.23

Arduino와 DS18B20 1-Wire 디지털 온도 센서 인터페이스, 온도표시

Arduino와 DS18B20 1-Wire 디지털 온도 센서 인터페이스 Arduino 프로젝트에 온도 감지를 추가하는 가장 쉽고 저렴한 방법 중 하나는 DS18B20 1-Wire 온도 센서를 사용하는 것입니다. 이 센서는 매우 정확하며 작동하는 데 외부 구성 요소가 필요하지 않습니다. 따라서 몇 개의 연결과 일부 Arduino 코드로 온도를 즉시 감지 할 수 있습니다! DS18B20 1-Wire 온도 센서 DS18B20은 Dallas Semiconductor Corp에서 제조 한 1-Wire 인터페이스 온도 센서 입니다. 고유한 1-Wire® 인터페이스는 마이크로 컨트롤러와 양방향 통신을위한 하나의 디지털 핀을 필요로한다. 센서는 일반적으로 두 가지 폼 팩터로 제공 됩니다. TO-92 패키지로 제공되는 ..

개발자/Arduino 2021.04.20

아두이노 DS1820 (디지털 온도 센서) 다루기

아두이노 DS1820 (디지털 온도 센서) 다루기 Arduino와 함께 DS1820 디지털 온도 센서를 사용하는 방법을 보여 드리겠습니다. 그러면 주변 환경이나 공기의 온도, 물과 같은 액체, 땅의 온도를 측정할 수 있습니다. 온도 측정 응용이 나와 있는데 모두 유용한 방법입니다. ^^ 욕조 온도 측정 실내 높이마다 다른 온도 측정 모터 동작할 때 표면 온도 측정 DS18B20 은 Maxim IC의 1-Wire 디지털 온도 센서입니다. -55℃ 에서 125℃ (+/- 0.5)까지 9 ~ 12 비트 정밀도로 섭씨로 출력을 볼 수 있습니다. 각 센서에는 고유한 64비트 일련번호가 새겨져 있어 하나의 데이터 버스에서 많은 수의 센서를 사용할 수 있습니다. 특징은 아래와 같습니다. 고유한 1-Wire® 인터페이..

개발자/Arduino 2021.04.19

아두이노 나노 PCB 사이즈

그러니까 회로 구성할 때 PCB 위에 핀 소켓을 박고 그 위에 아두이노 나노 핀 헤더를 끼우기 위해 사이즈가 필요해서 찾았다. 겨우 수요일인데 일을 너무 많이 하는듯. 달리기 언제 할 건데? 실제 ORCAD에서 불러오는 footprint 도면은 아래 사이트에서 검색하면 얻을 수 있다. Design electronics in a snap. Download free symbols, footprints, & 3D models for millions of electronic components World’s Largest PCB CAD Library Build better products faster with access to FREE symbols, footprints, and 3D models

개발자/Arduino 2021.04.14

Adafruit APDS-9960 Proximity, Light, RGB, and Gesture Sensor

근접, 빛, RGB, 제스처 센서 Adafruit APDS-9960 Proximity, Light, RGB, and Gesture Sensor APDS9960 제품 설명 이 브레이크 아웃은 꽉 찬 센서입니다! Adafruit APDS9960 근접, 조명, RGB 및 제스처 센서를 사용하여 기본 제스처 감지, RGB 색상 감지, 근접 감지 또는 주변 광 감지를 프로젝트에 추가하십시오. 마이크로 컨트롤러 (라이브러리 코드 실행)에 연결하면 간단한 제스처 (왼쪽에서 오른쪽, 오른쪽에서 왼쪽, 위에서 아래, 아래에서 위로가 현재 지원됨)를 감지하고 빨간색, 파란색, 녹색 및 맑은 빛의 양을 반환할 수 있습니다. , 또는 물체가 센서 전면에 얼마나 가까이 있는지 반환합니다. 이 장치는 I2C 인터페이스를 사용하므..

개발자/Arduino 2021.04.08
반응형