산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

동시에 수백 개의 릴레이 제어/동기화

구성품 및 소모품

IO 확장기
× 2
릴레이 확장기
× 2
16 릴레이 보드
× 2
Arduino Nano R3
× 1

이 프로젝트 정보

수백 개의 릴레이를 동시에 제어하고 동기화해야 합니까? 그런 다음 Arduino, ESP8266, Pi, PC 또는 Mac을 릴레이 확장기가 있는 IO 확장기에 연결하고 새로운 외부 래칭 기능을 사용하십시오.

이를 통해 래치할 준비가 된 매우 컴팩트한 비트 형식으로 새 릴레이 설정을 보낼 수 있습니다. 그런 다음 MCU 또는 IO 확장기의 단일 GPIO 라인을 사용하여 래치된 모든 데이터를 동시에 출력합니다.

Arduino 프로젝트로 최대 65,280개의 릴레이 제어를 참조하십시오!

그렇다면 외부 래칭을 위한 IO 확장기를 설정하려면 무엇이 필요합니까? IO Expander의 간단한 명령어 구조를 이용하여 External Latching으로 x16 Relay Board를 제어하는 ​​간단한 Use Case를 설정해 봅시다.

[g]pio 핀 [4]를 높은 [1] 레벨의 [o] 출력으로 설정하고 [g]pio 핀 [10]에서 [n]음의 에지 감지를 활성화하고 마지막으로 릴레이 [e]를 활성화합니다. xpander 외부 [l]핀 [10]의 래치.

>g4o1;g10n;el10
알았어
알았어
10
>

이제 릴레이 [e]xpanders [o]n/o[f]f/[s]et를 돌린 다음 외부 래치를 사용하여 [g]pio 핀 [4]를 [o]출력으로 설정하여 활성화할 수 있습니다. [1]ms 동안 낮은 [0] 레벨. 핀 4가 다시 래치할 준비가 되도록 하이 상태로 돌아가기를 원합니다.

>e1o;e10o;e16o
알았어
알았어
알았어
>g4o0,1
알았어
>

이제 이 프로젝트를 Arduino Nano를 사용하여 x2 IO 확장기, x2 릴레이 확장기 및 x2 16 릴레이 보드로 확장해 보겠습니다. x2 IO 확장기는 최대 255개의 IO 확장기가 있는 멀티드롭 9비트 프로토콜을 사용하여 함께 연결됩니다.

IO 확장기 외부 래칭 다이어그램

Arduino 코드

/* IO 확장기
*
* 릴레이 확장기 외부 래칭
*
*/

#include
#include "IOExpander9Bit.h"
#include

//#define SERIAL_DEBUG
#define MAX_BOARDS 2

#ifdef SERIAL_DEBUG
SoftwareSerial swSerial(8,7);
#endif

설정 무효
{
Serial9Bit.begin(115200 , SERIAL_9N1);
Serial9Bit.write(0); // IO 확장기를 9비트로 설정
#ifdef SERIAL_DEBUG
swSerial.begin(115200);
swSerialEcho =&swSerial;
#endif
wdt_enable(WDTO_8S);

for (uint8_t 보드 =1; 보드 <=MAX_BOARDS; 보드++)
SerialCmdDone(board, "eb1");

SerialCmdDone(1, "g4o1; g10n;el10"); // 릴레이의 외부 래치용 GPIO 설정
SerialCmdDone(2, "g10n;el10");
}

void loop()
{
정적 uint16_t i =0;
uint8_t r[2];

r[0] =~(uint8_t)(i>> 8);
r[1] =~ (uint8_t)i++;
SerialWriteRelayExpander(1, r, 2);
지연(50);
r[0] =~r[0]; // 보드 2의 모든 릴레이 반전
r[1] =~r[1];
SerialWriteRelayExpander(2, r, 2);
delay(50);

SerialCmdDone(1, "g4o0,1"); // 모든 릴레이 래치

wdt_reset();
}

IO 확장기 외부 래칭 작동

<비디오 너비="100%" 높이="100%" preload="metadata" controls="controls">http://www.zevendevelopment.com/videos/RelayExpanderLatching.mp4

그러니 지금 IO Expander를 구입하고 시스템을 구축하십시오!

<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

<울>
  • IO 확장기 외부 래칭
  • IO 확장기 외부 래칭Arduino
    /* IO 확장기 * * 릴레이 확장기 외부 래칭 * */#include #include "IOExpander9Bit.h#include //#define SERIAL_DEBUG#define MAX_BOARDS 2#ifdef SERIAL_DEBUGSoftwareSerial swSerial(8,7);#endifvoid setup(){ Serial9Bit.begin(115200, SERIAL_9N1); Serial9Bit.write(0); // IO 확장기를 9비트로 설정#ifdef SERIAL_DEBUG swSerial.begin(115200); swSerialEcho =&swSerial;#endif wdt_enable(WDTO_8S); (uint8_t 보드 =1; 보드 <=MAX_BOARDS; 보드++) SerialCmdDone(보드, "eb1"); SerialCmdDone(1, "g4o1;g10n;el10"); // 릴레이의 외부 래치용 GPIO 설정 SerialCmdDone(2, "g10n;el10");}void loop(){ static uint16_t i =0; uint8_t r[2]; r[0] =~(uint8_t)(i>> 8); r[1] =~(uint8_t)i++; SerialWriteRelayExpander(1, r, 2); 지연(50); r[0] =~r[0]; // 보드 2의 모든 릴레이 반전 r[1] =~r[1]; SerialWriteRelayExpander(2, r, 2); 지연(50); SerialCmdDone(1, "g4o0,1"); // 모든 릴레이 래치 wdt_reset();}외부 래치

    회로도


    제조공정

    1. 로봇 공학의 미래
    2. 양날의 SaaS 검을 장악하십시오
    3. 창고에 IoT를 구현할 때가 되었습니까?
    4. 전기 제어반의 기초
    5. 응답 로봇
    6. 구매 주기에 대한 통제권을 되찾을 때입니다.
    7. 자동차 브레인박스의 작동 이해
    8. 자동차 릴레이 이해
    9. 릴레이에 대해 알아야 할 사항
    10. 자동차보험 처음 가입하는 방법은?