공학/지능형 임베디드 9

MQTT

MQTT(Message Queuing Telemetry Transport)는 경량의 publish-subscribe 기반 메시지 프로토콜로서, 인터넷을 통한 IoT 디바이스 통신에 주로 사용됩니다. 1999년 IBM에서 개발되었으며, 오픈 소스로 제공되고 있습니다. 네트워크 대역폭이 제한적이거나, 낮은 전력 소비가 필요하거나, 네트워크 연결이 불안정한 환경에서 효과적으로 작동합니다. 이 프로토콜의 기본 개념은 publish(게시), subscribe(구독), 그리고 broker(중개인)입니다. - 게시자(publisher): 메시지를 발행합니다. - 구독자(subscriber): 특정 토픽의 메시지를 수신합니다. - 중개인(broker): 게시된 메시지를 적절한 구독자에게 전달합니다. Python을 사용..

Google Cloud를 Mysql에 연동

Google Cloud Platform(GCP)에서는 Cloud SQL이라는 관리형 데이터베이스 서비스를 제공하며, 이 서비스는 MySQL, PostgreSQL, 그리고 SQL Server를 지원합니다. 이 서비스를 이용하면 GCP 내에서 MySQL 인스턴스를 생성하고 관리할 수 있으며, 애플리케이션에서 이 인스턴스로 쉽게 연결할 수 있습니다. Cloud SQL의 주요 특징으로는 자동화된 백업, 레플리케이션, 업데이트 관리, 고가용성, 그리고 Google Cloud의 보안 기능 등이 있습니다. 이를 통해 사용자는 데이터베이스 인프라 관리에 대한 부담을 줄이고, 애플리케이션 개발에 집중할 수 있습니다. 다음은 Python을 사용하여 Google Cloud SQL의 MySQL 인스턴스에 연결하는 예시 코드입..

Google Cloud

Google Cloud Platform(GCP)은 Google이 제공하는 클라우드 컴퓨팅 서비스 모음입니다. GCP는 일반적으로 다양한 데이터 관리, 머신러닝, 인공지능, 컴퓨팅, 네트워킹 및 스토리지 서비스를 제공합니다. GCP의 주요 서비스 중 일부는 다음과 같습니다: - Google Compute Engine: 가상머신을 호스팅하는 인프라스트럭처-as-a-service (IaaS). - Google Kubernetes Engine: 컨테이너화된 애플리케이션을 위한 오케스트레이션 서비스. - Google App Engine: 개발자가 서버 관리 걱정 없이 애플리케이션을 배포할 수 있게 해주는 platform-as-a-service (PaaS). - Google Cloud Storage: 데이터를 저장..

SQLite란?

SQLite는 파일 기반의 경량 데이터베이스 관리 시스템(DBMS)입니다. SQLite는 전체 데이터베이스를 단일 파일에 저장하므로, 복잡한 설정이나 관리 없이 간단하게 사용할 수 있습니다. 이러한 특징으로 인해 SQLite는 주로 임베디드 시스템, 테스트 또는 프로토타이핑 환경, 그리고 모바일 애플리케이션에서 많이 사용됩니다. SQLite는 ACID(Atomicity, Consistency, Isolation, Durability) 원칙을 준수하며, SQL (Structured Query Language)을 사용하여 데이터에 액세스하고 조작합니다. 이는 표준 SQL 문법을 사용하여 쿼리를 작성하고 실행할 수 있다는 것을 의미합니다. SQLite3는 SQLite의 버전 3를 가리키며, 이 버전에서는 여러..

Local Database

'Local database'는 일반적으로 특정 기기나 서버에서만 액세스 가능한 데이터베이스를 가리킵니다. 이러한 형태의 데이터베이스는 보통 개별 애플리케이션, 웹사이트, 또는 서버에서 데이터를 관리하고 접근하는데 사용됩니다. 예를 들어, 모바일 앱에서 사용자의 설정, 상태, 데이터 등을 저장하거나 추적하기 위해 로컬 데이터베이스를 사용할 수 있습니다. 이는 인터넷 연결이 불안정하거나 없는 환경에서도 앱이 일관된 기능을 유지할 수 있게 해주며, 개인정보 보호와 관련된 문제를 줄일 수 있습니다. 다른 예로, 서버에 설치된 로컬 데이터베이스는 웹사이트나 웹 애플리케이션에서 특정 사용자의 정보, 상태, 트랜잭션 등을 저장하고 관리하는데 사용될 수 있습니다. 이러한 데이터베이스는 데이터를 빠르게 저장하고 검색할..

ThingSpeak 사용 예시 코드

다음은 ThingSpeak를 사용하여 온도와 습도 데이터를 업로드하는 아두이노 코드의 예시입니다. DHT22 센서를 사용하고, ThingSpeak 서버에 연결하기 위해 ESP8266 WiFi 모듈을 사용합니다. cpp 기반 코드 #include "DHT.h" #include #define DHTPIN 2 // 센서를 연결한 디지털 핀 번호 #define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 DHT dht(DHTPIN, DHTTYPE); const char* ssid = "your_SSID"; // SSID const char* password = "your_PASSWORD"; // WiFi password const char* host = "api.thingspeak...

ThingSpeak

ThingSpeak는 오픈 소스 "인터넷 오브 띵(IoT)" 응용 프로그램을 위한 데이터 분석 및 시각화 플랫폼입니다. 이 플랫폼은 사용자가 IoT 기기 및 센서에서 수집한 데이터를 저장, 검색, 시각화하고 분석할 수 있게 해줍니다. ThingSpeak는 클라우드 기반 서비스로, 사용자가 IoT 기기로부터 데이터를 수집하고, HTTP 프로토콜을 통해 ThingSpeak 서버로 전송할 수 있습니다. 서버에서는 이 데이터를 처리하고 저장하며, 필요에 따라 사용자가 나중에 데이터를 검색하고 분석할 수 있게 합니다. 또한 ThingSpeak는 MATLAB을 지원하여 고급 데이터 분석 및 시각화를 제공합니다. 사용자는 수집한 데이터에 대해 실시간 분석을 수행하거나, 시간에 따라 데이터를 시각화하고, 알림을 설정하..

IFTTT

IFTTT (If This Then That)는 다양한 웹 서비스 사이의 작업을 자동화하는 데 사용되는 무료 웹 기반 서비스입니다. 이름에서 알 수 있듯이, IFTTT는 "이것이 발생하면 그것을 수행하라"라는 조건부 구문을 따릅니다. 이러한 조건부 구문들을 '앱릿(applet)'이라고 부르며, 각각이 특정 트리거에 반응하여 특정 작업을 수행합니다. 예를 들어, IFTTT를 사용하면 Facebook에 새로운 사진을 게시할 때마다 그 사진을 자동으로 Dropbox에 저장하도록 설정할 수 있습니다. 또는, 일정 시간이 되면 스마트 전구를 자동으로 켜는 등의 작업을 수행할 수 있습니다. IFTTT는 수백 개의 다른 서비스와 호환되며, 이들 중 많은 서비스는 IFTTT에서 직접 사용할 수 있는 앱릿을 제공합니다...

Google Assistant란?

Google Assistant는 Google에서 개발한 인공 지능(AI) 기반의 가상 비서 서비스입니다. Google의 자연어 처리(NLP) 및 기계 학습 기술에 기반하여 사용자의 명령을 이해하고 대답하거나 작업을 수행합니다. Google Assistant는 다음과 같은 기능을 제공합니다: 1. **정보 검색:** Google Assistant는 Google 검색 엔진을 사용하여 인터넷에서 정보를 찾습니다. 사용자가 날씨, 뉴스, 스포츠 점수, 일정, 지리적인 정보 등에 대해 물어보면, Google Assistant는 이에 대한 대답을 제공합니다. 2. **일정 관리:** Google Assistant는 사용자의 Google 캘린더에 액세스하여 일정을 관리하고 알림을 설정하는데 도움을 줄 수 있습니다. ..