반응형 전자/통신83 HC-06 블루투스 모듈 대용량 데이터 전송 HC-06 블루투스 모듈에서 대용량 데이터 전송할 때는 주의해야 한다. HC-06 블루투스 모듈에 4kByte 정도의 데이터를 115200bps 속도로 전송하면 중간에서 데이터가 잘린다. 1kByte의 데이터를 전송하면 중간에 한두 바이트 빠지는 경우도 있다. 블루투스로 통신을 하면 불규칙적으로 응답지연일 발생하기 때문에 ACK을 사용하는 Hankshaking 통신 프로토콜을 사용해야 한다. 2023. 6. 17. SPI를 이용한 BiSS 통신 BiSS 통신 파형은 다음과 같다. 초기에는 클럭이 High이고 클럭이 Falling edge일 때 데이터를 읽는다. 위와 같은 BiSS를 SPI에서 사용하기 위해서는 Polarity를 1로 하고 Phase를 0으로 해야 한다. BiSS는 Timeout이 있기 때문에 한 프레임을 끊김없이 연속으로 읽어야 한다. ☞ BiSS 타임아웃 2023. 6. 3. I2C 데이터 클럭 신호 타이밍 I2C 통신에서 클럭 SCL과 데이터 SDA 신호는 다음과 같다. SCL 클럭에 High일 SDA 데이터가 적용된다. SCL을 High로 올리기 전에 SDA 데이터를 출력하고 SCL을 Low로 내린 후 SDA 데이터를 변경해야 한다. 클럭의 Falling-edge 또는 Rising-edge에서 데이터가 적용되는 SPI와 다르다. 2023. 5. 12. ADC111x I2C 통신으로 데이터 읽기 ADC111x를 I2C 통신으로 데이터를 읽기위한 통신 프레임은 다음과 같다. 데이터를 읽기 위해서는 2번 프레임(Start에서 Stop까지가 한 프레임)을 보내야 한다. 첫번째 프레임에서 Address Pointer Register를 쓰고 두번째 프레임에서 데이터를 읽는다. 한번 Address Pointer Register를 쓰면 그 다음에는 계속 읽기만 된다. ☞ EEPROM I2C 통신 읽기 2023. 5. 4. BiSS 통신 프레임 BiSS 통신 프레임은 다음과 같다. 마스터 클럭이 1MHz일 때 파형은 다음과 같다. 2023. 2. 25. BiSS 통신 타임아웃 BiSS 통신에서 Timeout은 아래 그림의 빨강색 부분이다. 마스터의 클럭이 Timeout 시간동안 변화가 없으면 슬레이브는 통신이 종료된 것으로 판단한다. 마스터에서 Timeout을 명령하고 슬레이브에서 Timeout을 판단한다. Timeout 시간이 고정된 슬레이브 장비도 있고 Adaptive Timeout을 사용하는 슬레이브 장비도 있다. Adaptive Timeout은 마스터의 MA 클럭 속도에 따라 Timeout 시간이 변화된다. Adaptive Timeout은 마스트 클럭 주기의 1.5배를 Timeout으로 사용한다. 마스터 클럭이 빠르면 Timeout 시간이 줄어들고 마스트 클럭이 느리면 Timeout 시간이 길어진다. ☞ 참고 자료 2023. 2. 25. NRZ, BiPhase, Manchester 인코딩 방식 NRZ, BiPhase, Manchester 인코딩 방식은 다음과 같다. NRZ - 0일때 Low이고 1일때 High BiPhase - 다음 비트에서 신호가 항상 변한다. - 0일때 중간에 신호 변화가 없고 1일때 중간에 신호 변화가 있다. Manchester - 0일때 중간에 High에서 Low로 변한다. - 1일때 중간에 Low에서 High로 변한다. 2023. 1. 5. SPI 통신 파형 CPHA=0일 때 SPI 통신은 다음과 같다. 마스터에서는 클럭 신호 출력전에 MOSI가 출력되고 슬레이브에서는 NSS가 Low가 될 때 MISO 데이터를 출력한다. 첫번째 클럭에서 신호가 캡처된다. CPHA=1일 때 SPI 통신은 다음과 같다. 첫번째 클럭신호에서 MOSI와 MISO 신호가 출력되고 2번째 클럭 변화에서 캡처된다. 2023. 1. 5. Modbus TCP/IP 프로토콜 Modbus TCP/IP 프로토콜의 패킷 구조는 다음과 같다. MBAP 헤더의 구조는 다음과 같고 7바이트이다. Function code와 Data 구조는 Modbus RTU와 동일하다. (여기 참고) Single Coil 쓰기일때 Function code와 Data는 다음과 같다. 예를들면, Single Coil을 ON한다면 패킷은 다음과 같다. 앞의 7바이트는 MBAP 헤더이고 뒤의 5바이트는 Function code와 Data이다. Packet : 00 00 00 00 00 06 00 05 00 00 FF 00 2022. 10. 5. 데이지 체인 통신 연결 통신 연결에서 데이지 체인으로 연결한 구성은 다음과 같다. 위와 같은 구성은 RS-485의 데이지 체인과는 조금 다르다. RS-485에서는 한개의 통신선에 모든 노드가 연결되어 있다. RS-485와 달리 한 통신선의 길이가 짧고 연결되는 노드가 1개씩이기 때문에 통신 신뢰성이 높다. 이와 같은 구성은 이더캣 통신이나 LED 등에서 사용한다. ☞ 이더캣 통신 ☞ WS2812 2022. 9. 21. 광 스위치 연결 광 스위치(Fiber Optic Switch)의 연결 구성은 다음과 같다. 위 그림에서 파랑선은 UTP 케이블이고 주황색선은 광케이블이다. 광케이블은 RX와 TX의 2선을 연결해야 한다. UTP 케이블은 최대 100m이지만 광케이블은 수 km까지 연결할 수 있다. 광스위치에 광케이블은 SFP를 통해 연결된다. ☞ SFP 2022. 9. 7. 광통신 GBIC과 SFP의 차이 GBIC(Giga Bitrate Interface Converter) GBIC(지빅)는 광신호를 전기신호로 바꿔주는 장치로 다음 그림과 같다. GBIC은 SC 커넥터를 사용한다. SFP(Small Form-factor Pluggable) SFP는 GBIC과 동일한 기능을 하지만 크기가 더 작은 제품으로 다음 사진과 같다. SFP는 LC 커넥터를 사용한다. SFP를 미니 GBIC이라고도 한다. 현재 GBIC은 거의 사용되지 않고 SFP를 많이 사용한다. SFP에서 발전된 버전으로 SFP+, XFP, QSFT+, CFP가 있다. SFP는 다음 사진과 같이 광 스위칭 허브에 사용된다. 광 스위칭 허브에 SFP를 꼽고 SFP에 광케이블를 연결한다. 2022. 9. 1. Modbus TCP/IP Modbus는 원래 RS-485 통신을 사용하지만 TCP/IP 통신을 이용할 수도 있다. Modbus TCP는 TCP/IP 통신을 이용한 Modbus통신을 규정한 방식이다. 여기에서 Modbus TCP 표준을 볼수 있다. Modbus TCP는 TCP/IP 프로토콜을 이용하고 Request-Response로 동작한다. Modbus TCP의 프레임 구조는 다음과 같다. MBAP(ModBus Application Protocol) Header는 7바이트로 다음과 같이 구성된다. ☞ Modbus TCP 프로그램 Simply Modbus TCP Client 2022. 8. 20. RS-485/422 분리회로 전원 생성 방법 Isolation된 RS-485 회로는 분리된 전원회로가 필요하다. 1. 분리 전원 생성 방법#1 가장 기본적인 방법은 다음 회로와 같이 트랜스를 사용하여 분리 전원을 만들어 사용하는 방법이다. 2. 분리 전원 생성 방법#2 DC-DC 컨버터 모듈 사용하는 방법이 있다. 3. 분리 전원 생성 방법#3 다음 회로의 ISOW7841는 분리된 신호와 분리된 전원을 생성하는 IC이다. 회로가 간단해지지만 ISOW7841와 같은 IC는 비싸고 수급이 어려운 단점이 있다. 2022. 8. 20. MII 란? MII (Media-Independent Interface)는 MAC과 PHY 칩을 연결하는 인터페이스 표준이다. IEEE 802.3u으로 표준화 되어 있다. MII는 '엠아이아이'라고 읽는다. MII을 사용하면 PHY가 변해도 MAC은 바꾸지 않아도 된다. MII는 속도를 높이고 신호선을 줄인 다음과 같은 다양한 버전이 있다. Reduced media-independent interface (RMII) Gigabit media-independent interface (GMII) Reduced gigabit media-independent interface (RGMII) Serial media-independent interface (SMII) Serial gigabit media-independent .. 2022. 8. 8. RS-485 Enable 신호 RS-485 IC에는 Enable 신호가 있다. DE는 Driver Enable이고 RE는 Receiver Enable이다. DE의 동작 로직은 다음과 같다. DE가 L일 때 출력은 하이 임피던스(Z)이다. 출력이 하이임피던스일때 Fail-safe 기능이 있거나 또는 풀업/풀다운 되어 있다면 리시버에서는 High로 읽힌다. RE의 동작 로직은 다음과 같다. RE가 H일 때 출력은 하이 임피던스(Z)이다. ☞ RS-485 Fail-safe 기능 ☞ 종단저항과 풀업/풀다운 저항 2022. 7. 22. RS-485 리피터 회로 RS-485의 리피터 회로는 다음과 같다. 1N4448은 Fast Switching Diode이다. 1N4148과 1N4448는 전류 정격이 다르다. ☞ TI 자료 바로가기 2022. 7. 22. RS-485 통신 접지 회로 RS-485 통신 회로#1 RS-485 통신의 회로는 다음과 같다. 왼쪽의 T에서 통신하고 오른쪽의 R로 전송한다. GND와 FG 사이에는 그라운드 루프 전류를 줄이기 위한 저항을 연결한다. RS-485 통신 회로#2 다음 그림과 같이 GND와 FG를 연결하는 저항을 한개만 사용하면 그라운드 루프 전류를 제거할 수 있다. ☞ RS-485 그라운드 방법 ☞ 그라운드 루프 2022. 7. 15. 서보 드라이버에 사용되는 이더캣 IC 이더캣(Ethercat) IC를 만드는 회사는 몇군데 있지만 Beckhoff의 ET1100을 가장 많이 사용하는 것 같다. ☞ Ethercat IC 제품 2022. 7. 9. 오픈소스 TCP/IP 스택 - uIP uIP (micro IP)는 8비트나 16비트 MCU에 사용될수 있는 작은 크기의 오픈소스 TCP/IP 스택이다. uIP는 IP, TCP, UDP의 RFC 표준을 완전히 만족하고 ICMP도 구현되어 있다. uIP는 OS 없이 동작한다. ☞ uIP 홈페이지 바로가기 2022. 6. 26. 이더캣 IC 제품 이더캣(Ethercat) 통신에 사용되는 IC를 ESC (Ethercat Slave Controller)라고 한다. 1. Beckhoff (ET1100) Ethercat 표준을 만든 Beckhoff(백호프)에서도 Ethercat IC와 개발도구들을 판매한다. 2. Microchip (LAN925x) 3. Renesas (EC-1) 4. TI (AMIC110) 2022. 6. 25. SCADA에서 Control과 Data의 차이 SCADA(Supervisory Control And Data Acquisition)에서 Control과 Data는 모두 통신 데이터이다. 하지만, Control과 Data는 성격이 다르다. 통신을 통해 주고 받는 Data는 저장장치에 저장하거나 모니터에 표시되거나 Control을 위한 로직에 사용된다. Control이 통신을 통해 전달되면 수신된 노드에서는 특정 액션을 수행한다. 액션에는 엑추레이터 동작, 시스템 리부팅 등이 있다. 클라언트에서 생성된 Data는 서버에 전달되고 Control은 서버에서 클라이언트로 전달된다. 2022. 5. 15. 원격 데이터 취득 방법 원격에 있는 시스템의 데이터를 전송받는 방법은 다음과 같다. 1) Request -Response 방식 - 원하는 데이터를 요구하고 받는 것으로 가장 기본적인 방식 - 데이터를 받는데 시간 지연이 발생 - 작은 크기의 데이터에 적합 2) Burst 방식 - 특정 명령을 주면 일정 시간 동안 취득한 데이터를 한번에 전송 - 대용량 데이터 처리에 적합 3) 주기적인 전송 - 특정 명령을 주면 일정 주기로 데이터를 계속 전송 - 작은 크기의 데이터에 적합 2022. 5. 15. Request-Response 통신 방식 Request-Response (또는 Request-Reply)는 요청에 응답하는 방식의 통신이다. Request-Response에 대비되는 방식을 One-way 통신이라고 한다. One-way 방식에는 일정 주기로 계속해서 센서 데이터를 전송하는 CAN bus 센서가 있다. 2022. 5. 15. CRC 종류 많이 사용되는 CRC에는 다음과 같은 것들이 있다. 2022. 5. 11. CRC 계산 원 데이터가 11010011101100 이라고 가정한다. CRC 제수(Divisor)를 1011이라고 가정한다. 1011를 다항식(Polynomial)으로 x3+x+1이라고 나타낸다. 16진수로 나타낼때는 최상위 비트를 제외하고 0x3이라고 한다. x3+x+1 CRC를 CRC-3-GSM이라고 한다. CRC 제수 자리수보다 한개 작은 3개의 0을 원데이터 끝에 붙인다. 11010011101100 → 11010011101100 000 다음와 같이 데이터와 제수를 XOR 연산을 반복해서 한다. 데이터와 제수가 일치하는 자리는 XOR 연산을 하고 비어있는 자리는 원데이터가 그대로 내려온다. 11010011101100 000 : 원데이터 + 000 1011 : 제수 01100011101100 000 1011 00.. 2022. 5. 11. RS-485 통신 서지 프로텍터 TVS RS-485 IC 보통 기본적인 ESD 보호 기능이 있지만 EFT나 라이트닝 서지에 대한 보호 기능은 없다. EFT나 서지를 보호하기 위해서는 외부에 TVS를 사용해야 한다. SM712는 RS-485 통신을 위한 TVS 부품이다. Littelfuse의 SM712는 다음과 같은 보호 기능을 가지고 있다. (1) ESD, IEC 61000-4-2 접속 ±30kV, 기중 ±30kV (2) EFT, IEC 61000-4-4, 50A (5/50ns) (3) Surge, IEC 61000-4-5 2nd Ed, 19A (8/20㎲) RS-485 IC와 TVS 사이에 저항을 넣는다. ☞ RS-485 Common mode 전압이 -7~+12V인 이유 2022. 4. 14. MAX485 사용 MAX485는 RS-485 통신을 위한 Half-duplex 트랜시버이다. MAX485의 최대속도 2.5Mbps이다. MAX485의 최대 연결 가능 노드는 32개이다. 하지만, 풀업다운 저항을 연결한다면 최대 노드수는 12개로 줄어든다. ☞ RS-485 최대 연결 노드수 2022. 4. 7. RS-422/485 통신에서 슬루 레이트 제한 기능 이란? RS-422/485 통신에서 슬루 레이트 제한(Slew Rate Limiting)이란 RS-422/485의 통신 파형의 상승과 하강 시간을 증가시켜 Slew Rate을 줄이는 것이다. Slew Rate이 높으면 RS-422/485 통신선에서 전자기파가 많이 발생하고 주변의 전자기기에 영향을 줄수 있다. 슬루 레이트 제한 기능을 사용하면 최대 속도는 250kbps 정도로 줄어들지만 통신 중 전자기파가 적게 발생한다. 슬루 레이트 제한 기능은 슬루 레이트 제한 기능이 있는 IC를 사용하여 구현한다. ☞ 참고자료 2022. 4. 2. 통신 데이터 TLV (Type-Length-Value) TLV (Type-Length-Value 또는 Tag-Length-Value)는 통신 프로토콜에서 데이터 종류, 크기, 데이터 값으로 구성된 데이터를 의미한다. 2022. 3. 17. 이전 1 2 3 다음 반응형