Skip to main content

자동화 시대를 앞당기다: Arduino Opta PLC 살펴보기

이미지 출처: 마우저 일렉트로닉스

마이클 파크스(Michael Parks)/마우저 일렉트로닉스

2023년 8월 29일

PLC(프로그래머블 로직 컨트롤러)는 현대 산업 자동화의 초석으로, 기계와 공정을 제어하기 위한 강력하고 유연한 플랫폼을 제공합니다. 간단히 말해, PLC는 조립 라인, 로봇 장치 또는 고신뢰성, 프로그래밍 용이성, 공정 결함 진단이 필요한 모든 활동과 같은 제조 공정의 제어에 적합한 산업용 디지털 컴퓨터입니다. PLC는 1960년대 후반에 당시 사용되던 복합 계전기 및 타이머 시스템을 대체하기 위해 개발되었습니다. 리처드 몰리(Richard Morley)는 1968년 최초의 PLC인 Modicon을 발명한 사람으로 종종 거론됩니다. 그 이후로 기술이 발전하면서 PLC는 기계 제어, 빌딩 자동화, 예지 정비, 데이터 로깅, 원격 모니터링, 보안을 비롯한 수많은 응용 분야에서 필수 부품이 되었습니다.

PLC는 다음과 같은 몇 가지 주요 부품으로 이루어집니다.

  • 프로세서(CPU): PLC의 모든 동작을 제어합니다. 입력 모듈의 데이터를 처리하고 신호를 출력 모듈로 보냅니다.
  • 입력/출력 모듈(I/O): PLC는 외부 환경과 상호 작용할 수 있습니다. 입력 모듈은 센서와 HMI(휴먼-머신 인터페이스)에서 데이터를 수신하고, 출력 모듈은 액추에이터와 기타 장치로 신호를 전송합니다.
  • 메모리: 사용자의 프로그램과 공정에 필요한 기타 정보를 저장합니다.
  • 통신 포트: PLC와 다른 장치(예: 컴퓨터, 다른 PLC, 네트워크 시스템) 사이에서 통신할 수 있도록 합니다.
  • 전원 공급 장치: PLC와 PLC I/O 모듈을 가동하는 데 필요한 전원을 제공합니다.

최근에 Arduino는 IIoT(산업용 IoT) 기능을 갖춘 안전하고 사용하기 쉬운 마이크로 PLC인 Opta 플랫폼(그림 1)으로 PLC 시장에 진출했습니다. 이 플랫폼은 선도적인 산업 및 빌딩 자동화 장치 제조업체 Finder와의 제휴로 설계되었습니다. 전문가들은 Opta를 사용하여 Arduino 생태계를 활용하면서 자동화 프로젝트를 확장할 수 있습니다. Opta는 LD(Ladder Logic Diagram) 및 FBD(Function Block Diagram)를 포함하여 Arduino 스케치와 표준 PLC 언어를 모두 지원합니다.

그림 1: Arduino는 Opta PLC 제품군을 필두로 PLC(프로그래머블 로직 컨트롤러) 시장에 진출했습니다.(출처: Arduino)

Opta는 Arduino Opta Lite, Arduino Opta RS485, 가장 기능이 풍부한 Arduino Opta Wi-Fi®의 세 가지 모델로 제공됩니다. Opta에는 사용자가 실시간 제어, 모니터링을 수행하고 예지 정비 애플리케이션을 구현할 수 있는 강력한 STMicroelectronics STM32H747XI 듀얼 코어 Arm® Cortex®-M7+M4 MCU가 있습니다. 모델에 따라 Opta에는 RS-485와 같은 산업별 프로토콜 외에도 USB, 이더넷, Wi-Fi®/Bluetooth® Low Energy 등 네트워크 연결을 위한 다양한 옵션도 있습니다. Opta는 외부 냉각이 없는 듀얼 코어 아키텍처 덕분에 산업 온도 범위(-20°C~+50°C)에서 작동하는 매우 신뢰성 높은 설계가 적용된 DIN 레일 장착형 장치입니다. Arduino Opta의 주요 특징은 다음과 같습니다.

  • 보안: Opta는 보안 부팅 프로세스가 있고 안전한 통신을 위해 TLS 1.2를 지원합니다.
  • 개발 용이성: Opta는 Arduino IDE 또는 Finder PLC IDE를 사용하여 프로그래밍할 수 있습니다.
  • 전문가 수준의 IIoT 기능: Opta는 여러 가지 연결 옵션이 있으며 인터넷에 연결하여 원격 모니터링과 제어에 사용할 수 있습니다.

이 프로젝트에서는 크기에 따라 포장물을 분류하는 개념 증명 컨베이어 시스템을 설계합니다. 이 프로젝트를 통해 Arduino 2.0 IDE와 Arduino PLC IDE로 개발하는 것을 포함하여 Arduino Opta와 관련된 몇 가지 개념을 살펴볼 수 있습니다. 또한 하드웨어와 PLC의 인터페이스 과정도 살펴보겠습니다. 마지막으로 Arduino Cloud를 통해 Opta를 인터넷에 연결하는 데 필요한 점을 살펴보겠습니다.

BOM(자재 명세서)과 도구

이 글의 게시 기준으로 총 BOM 비용은 약 $300(USD, 표 1)입니다.

표 1: 프로젝트 BOM

마우저 P/N

제품 설명

수량

782-AFX00002

Arduino Opta Wi-Fi

1

485-2167

IR 브레이크 빔 센서(송신기 및 수신기)

2

603-CFR25SJT-26-10K

10kΩ 저항기

2

424-240-131

브레드보드 

1

424-WIRE-KIT

점퍼 와이어

1

426-DFR0884

강압(12V→5V) 전압 레귤레이터

1

713-114110027

모드버스 RTU가 장착된 계전기 제어 보드

1

229-HG16-240-AB

DC 모터

2

225-DIN-RAIL

DIN 장착 레일(옵션)

1

BOM 외에도 다음 도구를 권장합니다.

  • 소형 십자 드라이버 및 일자 드라이버
  • 와이어 커터/스트리퍼
  • 작은 니들 노즈 플라이어
  • 디지털 멀티미터
  • 고속 인터넷 연결
  • Windows 10 이상 운영 체제의 PC

참고 자료

  • 마우저 프로젝트 장바구니는 여기에서 볼 수 있습니다.
  • GitHub 저장소는 여기에서 볼 수 있습니다.

하드웨어 빌드

이 프로젝트에서는 적외선(IR) 브레이크 빔 센서 2개를 사용하여 패키지와 사이즈를 감지합니다. 이러한 센서는 물체 감지, 계수, 보안 시스템과 같은 응용 분야에 흔히 사용됩니다. 이들 센서는 쌍으로 제공되는데, 송신기에는 전선이 2개 있고 수신기에는 전선이 3개 있습니다.

이러한 센서 쌍을 쌓는 방식으로 구성합니다. 작은 상자가 통과하면 센서가 하나만 활성화됩니다. 더 큰 상자가 통과하면 두 센서에서 쏘는 빔이 모두 차단되어 두 센서가 모두 활성화됩니다. 마지막으로, 이들은 5V 센서이므로 전압 레귤레이터를 사용하여 전압을 12V에서 5V로 줄여야 합니다. 그림 2는 이들 센서가 Opta에 연결되는 방식을 나타낸 것입니다.

그림 2: 하드웨어 연결 방식을 보여주는 배선도. 풀업 저항기는 선택 사양이며, 필요하면 IR 수신기 OUT 핀을 벅 컨버터의 5V에 연결하십시오. (출처: Green Shoe Garage)

IR 브레이크 빔 센서를 연결하려면 다음 단계를 따르십시오.

  1. Opta의 12V 소스 핀을 전압 레귤레이터의 양극(+) 입력부에 연결합니다.
  2. Opta의 GND(-) 소스 핀을 전압 레귤레이터의 음극(-) 입력부에 연결합니다.
  3. 송신기(IR LED)의 VCC(전원) 핀을 전압 레귤레이터의 양극(+) 출력부에 연결합니다.
  4. 송신기의 GND(접지) 핀을 전압 레귤레이터의 음극(+) 출력부에 연결합니다.
  5. 수신기의 VCC(전원) 핀을 전압 레귤레이터의 양극(+) 출력부에 연결합니다.
  6. 수신기의 GND(접지) 핀을 전압 레귤레이터의 음극(+) 출력부에 연결합니다.
  7. 상부 브레이크 빔 센서의 경우 OUT(신호) 핀을 I3 디지털/아날로그 입력 단자에 연결합니다.
  8. 하부 브레이크 빔 센서의 경우 OUT(신호) 핀을 I4 디지털/아날로그 입력 단자에 연결합니다.
  9. 특정 모듈에 따라 풀업 또는 풀다운 저항기를 추가할 수 있습니다. 풀다운 저항기를 사용하는 경우 신호 핀과 접지 사이에 10kΩ 저항기를 연결합니다.

다음으로, Opta PLC를 DC 모터 인터페이스용으로 설계된 회로 보드에 연결합니다. 두 보드는 RS485 버스 모드버스 RTU 명령(종단부 저항이 없는 반이중 통신)을 통해 통신합니다. 제어 보드에는 패키지를 옮기는 컨베이어를 구동하는 DC 모터를 제어하는 계전기가 포함됩니다.

Opta 보드에는 인클로저 상단에 오목한 나사 단자 형태의 전용 RS485 하드웨어 포트가 있습니다. 핀에는 A(-), GND, B(+) 라벨이 부착되어 있습니다. 모터 제어 보드에는 전원용 VIN 핀 외에 위 라벨에 해당하는 핀이 있습니다. PLC를 컨트롤러에 연결하려면 다음 단계를 따르십시오.

  1. PLC의 A(-)를 제어 보드의 A(-)에 연결합니다.
  2. PLC의 B(+)를 제어 보드의 B(+)에 연결합니다.
  3. PLC의 GND를 제어 보드의 GND에 연결합니다.
  4. PLC의 12V를 제어 보드의 VIN에 연결합니다.

마지막으로, 12V DC 모터를 제어 계전기에 연결해야 합니다. 각 모터가 서로 반대 방향으로 회전하도록 해야 합니다. 모터는 Opta 12V 포트에서 전원 공급을 받습니다.

  1. Opta의 12V 핀을 제어 보드의 NO1에 연결합니다.
  2. 계전기 제어 보드의 COM1을 DC 모터의 리드 중 하나에 연결합니다.
  3. DC 모터의 다른 쪽 리드를 Opta의 GND 핀에 연결합니다.
  4. Opta의 12V 핀을 제어 보드의 NO2에 연결합니다.
  5. 계전기 제어 보드의 COM2를 두 번째 DC 모터의 리드 중 하나에 연결합니다. 첫 번째 모터에서 리드가 반대 방향으로 회전하도록 역방향으로 되어 있는지 확인하십시오.
  6. 두 번째 DC 모터의 다른 쪽 리드를 Opta의 GND 핀에 연결합니다.

소프트웨어 개발

Opta 프로그램에는 기존 Arduino IDE 2.0과 웹 편집기를 모두 포함하여 몇 가지 옵션이 존재합니다. Opta는 산업 자동화 애플리케이션에서 전통적으로 사용되는 언어로 프로그래밍할 수 있도록 Arduino PLC IDE와도 호환됩니다. Opta Wi-Fi® 모델은 웹 브라우저나 Arduino IoT Cloud Remote 스마트폰 앱을 통해 원격 검침 및 원격 제어를 수신하기 위해 Arduino IoT Cloud에 연결할 수도 있습니다.

우리의 요구 사항 중 하나는 PLC가 원격 모니터링을 위해 클라우드와 통신하는 것이므로, 먼저 Arduino IoT Cloud 대시보드에서 새 장치를 프로비저닝하겠습니다(그림 3). 먼저, Arduino Create 에이전트를 다운로드하고 설치하여 장치가 Arduino Cloud 백엔드와 통신할 수 있도록 하십시오. 에이전트를 다운로드하고 설정 설명서를 검토합니다. 설치가 완료되면 USB Type-C 케이블로 Create 에이전트를 실행하는 개발자 워크스테이션 컴퓨터에 Opta를 연결합니다.

그림 3: Arduino IoT Cloud에 새 장치 프로비저닝하기. (출처: Green Shoe Garage)

먼저, 장치 탭으로 이동하여 추가 버튼을 클릭하고 설정 마법사를 완료하면 Opta를 Arduino IoT Cloud 환경에 프로비저닝할 수 있습니다. 이 단계에서는 Opta가 IoT Cloud를 통해 비밀리에 통신할 수 있도록 해주는 보안 키를 설정합니다. 또한 Opta에 대한 일종의 "디지털 트윈"(Arduino 환경에서는 "thing(가상 장치)"으로 알려짐)을 생성해야 합니다(그림 4). 그렇게 하려면 Things 탭을 클릭한 다음 만들기 버튼을 클릭하십시오. IoT Cloud용 Opta 프로비저닝에 대한 자세한 내용은 여기에서 기술 참조를 확인하십시오.

그림 4: Opta PLC의 디지털 트윈 또는 "thing" 설정. (출처: Green Shoe Garage)

완료되면 PLC가 IoT Cloud에 연결된 것으로 나타나야 합니다. 본인의 Arduino 계정으로 로그인하면 데스크톱 IDE에서 웹 기반 코드에 액세스할 수도 있습니다.

코드 개요

먼저 프로젝트의 중요한 파일을 살펴보겠습니다.

  • main.ino는 장치를 설정하고 메인 루프를 실행하는 작업의 대부분을 수행합니다. 프로젝트 관련 소스 코드는 대부분 이 파일에서 찾을 수 있습니다.
  • thingProperties.h에는 물리적 PLC를 클라우드의 가상 트윈 장치에 연결하는 함수 호출이 포함됩니다.
  • arduino_secrets.h에는 Opta가 로컬 무선 네트워크에 연결할 수 있게 해주는 Wi-Fi® SSID와 비밀번호가 포함됩니다.
    • #define SECRET_OPTIONAL_PASS "NETWORK_PASSWORD"
    • #define SECRET_SSID "NETWORK_NAME_HERE"

주요 라이브러리, 함수 및 변수

기본적으로 포함된 라이브러리 외에도, #include 문을 통해 다음 라이브러리를 추가해야 합니다.

  • ArduinoModbus.h에는 모드버스 RTU 통신 패킷 처리에 필요한 코드가 있습니다.
  • ArduinoTCloud.h를 사용하면 Opta를 Arduino IoT Cloud 서비스에 연결할 수 있습니다.
  • Arduino_ConnectionHandler.h는 연결 및 연결 해제, 속성 변경 업데이트, 이벤트 콜백을 제어하는 ConnectionManager를 제공합니다.

이러한 라이브러리는 주로 Opta가 DC 모터 컨트롤러 보드와 통신하는 데 필요합니다. 이 보드는 다음 설정값으로 모드버스 RTU 직렬 통신 프로토콜을 통해 통신합니다.

  • 보드 속도: 9,600bps
  • 데이터 비트 수: 8
  • 패리티 비트: 아니요
  • 정지 비트: 1

다음은 main.ino 파일 내에서 찾을 수 있는 모드버스 통신용 주요 함수 및 변수 중 일부입니다.

  • byte controlBoardAddress = 0x01은 모터 제어 보드의 장치 주소를 설정합니다.
  • int motor1 = 1은 높이가 높은 패키지가 감지될 때 모터가 컨베이어를 제어하기 위한 레지스터입니다.
  • int motor2 = 2는 높이가 낮은 패키지가 감지될 때 모터가 컨베이어를 제어하기 위한 레지스터입니다.
  • int motorTimeOn = 5000은 패키지가 감지된 후 컨베이어가 작동하는 기간을 설정합니다.
  • ModbusRTUClient.begin(9600)은 지정된 보드 속도로 모드버스 기능을 시작합니다.
  • void holdingRegisterWrite(int dev_address, uint8_t reg_address, uint8_t holding_write)
    • int dev_address: 모터 제어 보드의 주소는 제조업체에 따라 다를 수 있으므로 보드 설명서를 확인해 보십시오.
    • uint8_t reg_address: 모터 제어 보드가 실행할 명령이 기록되는 레지스터 주소입니다. 레지스터 번호는 물리적 계전기 보드 번호에 해당합니다. 이는 0x00과 0x0F 사이의 값일 수 있습니다.
    • uint8_t holding_write: 계전기를 제어하기 위해 레지스터에 기록되는 명령입니다. 명령은 다음과 같습니다.
      • 0x0100: 계전기 ON
      • 0x0200: 계전기 OFF
      • 0x0300: 상태 계전기 켜기/끄기 전환
  • ModbusRTUClient.lastError()는 모드버스에서 생성된 마지막 오류 메시지가 포함된 문자열을 반환합니다.

다음으로, 빔 브레이크 센서의 코드를 살펴보겠습니다. 새 패키지를 제때 처리할 수 있도록 간섭에 대한 입력값으로 구성하는 방법을 포함한 몇 가지 다른 방법으로 이들 센서를 구성할 수 있습니다. 송신기/수신기 쌍 두 세트가 있습니다. 송신기는 계속 켜져 있으므로 송신기용 코드는 없습니다. 코드에서 수신기 신호를 처리하겠습니다. 이들 센서는 ACTIVE LOW이므로 패키지의 존재로 인해 빔이 차단되면 PLC가 0V를 감지합니다. 표 2에 몇 가지 주요 함수와 변수가 나와 있습니다.

표 2: 하드웨어 핀 콜아웃

하드웨어 핀 이름

소프트웨어 핀 이름

기능상의 이름

I3

A2

PIN_A2, 하부 빔 브레이크 센서

I4

A3

PIN_A3, 상단 빔 브레이크 센서

  • void setup()
    • pinMode(A2, INPUT): 하부 빔 브레이크 센서
    • pinMode(A3, INPUT): 상부 빔 브레이크 센서
    • attachInterrupt(digitalPinToInterrupt(A0), lowerBeamBreak_ISR, LOW): 하단 빔 브레이크 센서가 트립되면 패키지가 있다는 것을 알 수 있습니다. 그런 다음 상단 빔 브레이크 센서를 확인하여 패키지 높이가 높은지 낮은지 판단합니다.
    • void lowerBeamBreak_ISR(): ISR(간섭 서비스 루틴)은 하단 빔 브레이크 센서를 방해하는 물체를 감지합니다.

코드의 마지막 주요 부분은 Wi-Fi®를 통해 원격 검침 데이터를 Arduino IoT Cloud로 다시 전달할 수 있도록 예약됩니다. 클라우드 통신 활성화에 사용되는 함수는 다음과 같습니다.

  • void setup()
    • initProperties()는 Opta가 IoT Cloud와 통신할 수 있도록 "thing" 속성을 초기화합니다.
    • ArduinoCloud.begin(ArduinoIoTPreferredConnection)은 Wi-Fi®를 통해 통신을 시작합니다.
    • setDebugMessageLevel(2)는 디버그 메시지의 세분성을 설정합니다. 설명서에 따르면 숫자가 클수록 더 자세한 정보를 얻을 수 있는데, 기본값은 0(오류만)이고 최대값은 4입니다.
  • void loop()
    • ArduinoCloud.update()는 원격 검침 데이터를 클라우드로 다시 보내려면 메인 루프의 모든 반복을 통해 호출해야 합니다.
  • thingProperties.h
    • bool lowerSensorTripped는 하부 빔 브레이크 센서의 상태를 저장하는 변수입니다. TRUE로 설정하면 패키지가 감지됩니다. 하부 빔 브레이크 센서만 트립되면 패키지가 작다는 뜻입니다.
    • bool upperSensorTripped는 상부 빔 브레이크 센서의 상태를 저장하는 변수입니다. TRUE로 설정하면 패키지가 감지됩니다. 상부 및 하부 센서가 모두 트립되면 큰 패키지가 감지되었다는 뜻입니다.
    • ArduinoCloud.addProperty(lowerSensorTripped, READ, ON_CHANGE, NULL)은 하단 빔 브레이크 센서의 상태를 클라우드로 보냅니다.
    • ArduinoCloud.addProperty(upperSensorTripped, READ, ON_CHANGE, NULL은 상부 빔 브레이크 센서의 상태를 클라우드로 보냅니다.

Arduino PLC IDE

Opta 코딩을 위한 또 다른 접근 방식은 IEC 61131-3 표준 언어를 사용하여 PLC 호환 Arduino 장치를 프로그래밍할 수 있는 소프트웨어 개발 환경인 Arduino PLC IDE를 사용하는 것입니다. 이 IDE는 무료 오픈 소스 소프트웨어로, Windows에만 사용할 수 있습니다. 이 문서의 게시 시점 PLC IDE는 시판되는 다른 PLC 프로그래밍 소프트웨어에 비해 기능이 부족합니다. 그러나 Arduino PLC IDE에는 PLC 프로그래밍을 위한 강력한 도구가 되는 다양한 기능이 있습니다.

  • 5가지 IEC 61131-3 프로그래밍 언어 지원: 래더 다이어그램, 기능 블록 선도, 구조화된 텍스트, 순차적 함수 차트, 명령어 목록.
  • Arduino 및 PLC 프로그래밍 모두를 위한 통합 프로그래밍 환경.
  • 코드에서 오류를 찾아서 수정하는 데 도움이 되는 다양한 디버깅 도구.
  • 사용하기 쉽고 직관적인 사용자 인터페이스.

Arduino PLC IDE는 PLC 호환 Arduino 장치를 프로그래밍하려는 모든 이에게 귀중한 도구입니다. 쉽게 사용하고 구성할 수 있으며 PLC 프로그래밍을 위한 강력한 도구가 되는 다양한 기능을 갖추고 있기 때문입니다.

Arduino PLC IDE 소프트웨어를 설치하고 설정하려면 다음 단계를 따르십시오.

  1. Arduino 웹사이트에서 Arduino PLC IDE와 Arduino PLC IDE 도구를 다운로드합니다.
  2. Arduino PLC IDE 도구 설치 프로그램을 실행하고 설치 지침을 따릅니다.
  3. 설치가 완료되면 Arduino PLC IDE를 엽니다.
  4. USB 케이블을 사용하여 Arduino PLC 호환 장치를 컴퓨터에 연결합니다.
  5. Arduino PLC IDE에서 도구 메뉴를 클릭한 다음 보드를 클릭하고 장치를 선택합니다.
  6. 포트 섹션에서 장치가 연결된 COM 포트를 선택합니다.
  7. PLC IDE 부트 로더 버튼을 클릭하여 장치에 부트 로더를 다운로드합니다.
  8. 부트 로더가 다운로드되면 연결 버튼을 클릭하여 장치에 연결합니다.
  9. 장치 라이선스 섹션에서 장치의 하드웨어 ID를 입력하고 활성화 버튼을 클릭합니다.
  10. 이제 Arduino PLC IDE를 사용하여 Arduino PLC 호환 장치를 프로그래밍할 수 있습니다.

PLC IDE를 통한 설정 및 프로비저닝에 대한 자세한 내용은 https://docs.arduino.cc/tutorials/opta/plc-ide-setup-license#3-project-setup을 참조하십시오.

GitHub 저장소에서 PLC IDE(그림 5)를 사용하여 Opta를 프로그래밍하는 방법을 보여주는 코드를 제공해 드렸습니다. 클라우드를 지원하는 PLC IDE를 사용하는 방법에 대한 자세한 내용을 보려면 여기를 클릭하십시오. 모드버스 및 PLC IDE에 대한 자세한 내용을 보려면 여기를 클릭하십시오.

그림 5: Arduino PLC IDE는 산업 엔지니어들이 PLC를 개발하기에 더 익숙한 도구를 제공합니다. (출처: Green Shoe Garage)

최종 조립과 문제 해결

하드웨어를 조립하고 Opta PLC에 펌웨어를 플래시했으므로 프로젝트를 테스트하기 위한 최종 준비를 하겠습니다. 현재 설정에서는 빔 브레이크 센서가 컨베이어 벨트의 양쪽에 배치됩니다(그림 6). 송신기는 오른쪽, 수신기는 왼쪽에 배치하겠습니다. 송신기와 수신기를 수평과 수직으로 잘 정렬시켜 큰 패키지의 경우 두 센서 세트를 모두 간섭하도록 만드십시오. 모터, 벨트 등의 기계 부품에서 전선이 안전하고 깔끔하게 배선되었는지 신중히 확인하십시오.

그림 6: 작은 패키지는 하부 빔 브레이크 센서만 트립시킵니다. (출처: Green Shoe Garage)

원격 검침 데이터를 보려면 Arduino Cloud Remote 앱을 다운로드하여 실행하거나 브라우저에서 https://create.arduino.cc/iot/dashboards로 이동하여 알맞은 대시보드를 선택하십시오(그림 7).

그림 7: 컨베이어 활동을 모니터링하기 위한 클라우드 기반 대시보드. (출처: Green Shoe Garage)

문제 해결

프로젝트에 뭔가 문제가 있는 경우 도움이 될 만한 몇 가지 사항을 개발 중에 발견한 내용들을 소개합니다.

  • 정확한 연결은 특정 IR 브레이크 빔 센서 모델에 따라 다를 수 있으므로, 센서와 함께 제공되는 데이터시트나 설명서를 참조하십시오.
  • IR LED(송신기)와 광다이오드 또는 광트랜지스터(수신기)가 빔이 차단되는 것을 감지하도록 올바르게 정렬되어 있는지 확인하십시오.
  • 센서 작동에 방해될 수 있으므로 직사광선이나 다른 IR 소스에 센서가 노출되지 않도록 하십시오.
  • 직렬 통신이 9,600bps로 설정되었는지 확인하십시오.
  • Arduino PLC IDE에 장치가 표시되지 않으면 장치에 해당하는 Arduino 코어를 설치해야 할 수도 있습니다.
  • 장치에 부트 로더가 없으면 Arduino IDE를 사용하여 플래시해야 합니다.
  • IDE와 PLC IDE 사이에서 전환하면 Wi-Fi® 기능이 중단될 수 있습니다. Arduino IDE 2.0을 사용할 때는 파일 > 예제 > Portenta H7 보드 747_system > 예제 > wififirmwareupdater로 이동하여 Wi-Fi 펌웨어 업데이트를 실행해야 합니다. 펌웨어가 플래시되었으면 직렬 모니터를 시작하고 설정 루틴을 완료하십시오. 그런 다음 프로젝트 펌웨어를 플래시하면 Wi-Fi® 연결이 복원됩니다.

맺음말

PLC는 50년이 넘는 세월 동안 끊임없이 변화하는 기술 환경에서도 산업 자동화의 필수적인 요소로 살아남았습니다. Arduino가 이러한 종류의 내장형 시스템에 진입함으로써 산업용 시스템 설계자에게 흥미롭고 새로운 옵션을 제공하게 되었으며, 특히 리소스가 더욱 제한적인 소규모 작업에 유용합니다. 적응성, 탄력성, 기능성을 구비한 Arduino Opta PLC 제품군은 확실히 현대 산업계의 트렌드를 주도하는 제품이 될 것입니다.

기존 PLC를 Arduino Opta Wi-Fi®로 바꾸는 것은 IIoT 시스템에 편리하게 장비를 추가하는 방법입니다. 전통적인 PLC 프로그래밍 기법을 사용할 수 있으면 전통적인 PLC 소프트웨어 개발에 익숙한 시스템 통합업체의 채택 기준을 낮추는 데 도움이 됩니다.

이 프로젝트를 통해 PLC의 원리와 산업화된 사회가 제대로 기능할 수 있게 해주는 중요한 시스템에 대해 기본적으로 이해할 수 있을 것입니다. 엔지니어, 기술자 또는 단순히 기술에 관심이 있는 분이든 관계없이, Arduino Opta PLC는 강력한 학습 플랫폼뿐 아니라 수많은 실용적인 자동화 및 원격 제어 애플리케이션을 위한 저렴하고 기능적인 솔루션도 제공합니다.

Scale Up Automation with the new Arduino Opta microPLC

Transforming IoT with the Arduino Opta MicroPLC


저자 소개

Mike Parks

마이클 파크스(Michael Parks, P.E.)는 미국 메릴랜즈주의 남부에 위치한 전자설계 스튜디오이자 기술 컨설팅 업체인 그린슈개러지(Green Shoe Garage)를 운영하고 있다. 그는 기술과 과학적 문제에 대한 대중의 인식을 높이는 데 도움이 되는 S.T.E.A.M. Power 팟캐스트를 운영하고 있다. 그는 또한 메릴랜드 주 공인 전문 엔지니어이기도 하며, 존스 홉킨스 대학교(Johns Hopkins University)에서 시스템 엔지니어링 석사 학위를 취득했다.