Ladder Logic Translation using Large Language Models in Industrial Automation
본 논문은 대규모 언어 모델(LLM), XML 추출, 그리고 TIA Portal Openness API를 활용하여 로크웰 래더 로직 프로그램을 지멘스 S7 코드로 자동 변환함으로써, 명령어 카테고리 간의 높은 의미론적 일관성을 보장하고 벤더 종속성 문제를 효과적으로 해결하는 정밀하게 설계된 파이프라인을 제시한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
당신이 공장의 제어 시스템을 한 브랜드의 로봇에서 다른 브랜드의 로봇으로 옮기려 한다고 상상해 보십시오. 이것은 마치 프랑스어로 쓰인 레시피(Rockwell PLC)를 독일어로 쓰인 레시피(Siemens PLC)로 번역하려는 것과 같습니다. 두 레시피 모두 동일한 요리를 위한 것이지만, 재료 목록이 다르고, 조리 단계에 사용되는 용어가 다르며, 주방 도구가 서로 맞지 않습니다.
이 논문은 대규모 언어 모델(LLM)—이야기를 쓰거나 코드를 작성할 수 있는 것과 같은 종류의 똑똑한 AI—을 사용하여 이 번역 문제를 해결하는 새로운 방법을 제시합니다. 다음은 그들의 접근 방식을 쉬운 비유를 사용하여 정리한 내용입니다.
문제점: 서로 다른 두 가지 언어
산업 자동화 분야에서 서로 다른 기업들(예: Rockwell과 Siemens)은 기계를 프로그래밍하기 위해 각자 고유의 "방언"을 사용합니다. 두 방식 모두 일반적인 국제 표준(IEC 61131-3)을 따르지만, 구체적인 명령어는 완벽하게 일치하지 않습니다.
- 기존 방식: 이전의 도구들은 정적인 사전(예: "프랑스어의 단어 A는 항상 독일어의 단어 B와 같다")을 사용하여 번역을 시도했습니다. 이는 중첩된 명령어나 복잡한 논리 분기처럼 문장이 복잡해질 때 자주 실패했으며, 인간이 수동으로 오류를 수정해야 했습니다.
- 새로운 방식: 저자들은 단순히 단어를 찾아내는 것이 아니라, 문맥과 명령어의 구조를 이해하는 AI를 사용했습니다. 이는 마치 인간 번역가가 이야기의 흐름을 이해하는 것과 같습니다.
해결책: 3단계 조립 라인
저자들은 Rockwell의 형식(L5X)을 Siemens의 형식(SimaticXML)으로 번역하는 파이프라인(자동화된 조립 라인)을 구축했습니다. 이를 세 단계의 공장이라고 생각하십시오.
- 1단계: 번역가 (XML 추출 및 정규화)
먼저, 시스템은 원래의 Rockwell 코드를 읽습니다. 단순히 복사하여 붙여넣는 것이 아니라, 코드를 깨끗하고 조직적인 부품 목록("중간 표현" 또는 IR)으로 분해합니다.
- 비유: 엉망으로 섞여 있는 레고 블록 더미를 가져와서 색상과 모양별로 분류한 뒤, 다른 레고 세트로 다시 만들기 전에 깔끔하고 표준화된 설계도를 만드는 과정과 같습니다.
- 2단계: 스마트 설계자 (LLM)
이것이 운영의 핵심인 '두뇌'입니다. AI는 정리된 설계도를 보고 Siemens 시스템을 위한 새로운 코드를 작성하기 시작합니다.
- 가드레일(안전장치): AI가 환각 현상을 일으키거나 임의로 규칙을 만들어내는 것을 방-지하기 위해, 연구진은 엄격한 "가드레일"을 제공했습니다. 그들은 공식적인 Siemens 규칙서(스키마)와 템플릿을 AI에게 학습시켰습니다.
- 비유: 작가에게 엄격한 개요와 특정 스타일 가이드를 주는 것과 같습니다. 작가는 이야기를 쓸 수 있지만, 반드시 특정 장 제목을 사용해야 하며 새로운 종류의 문장 부호를 발명해서는 안 됩니다.
- 이중 확인: AI가 코드의 한 부분을 작성하면, 해당 코드가 무엇을 하는지에 대한 평이한 영어 설명을 함께 작성합니다. 그런 다음 시스템은 코드와 설명이 서로 일치하는지 확인합니다("코사인 유사도"라는 수학적 테스트 사용). 만약 일치하지 않으면, 시스템은 해당 코드를 거부합니다.
- 3단계: 품질 관리 (결정론적 후처리)
마지막으로, AI가 놓쳤을 수도 있는 작은 구조적 오류를 수정하기 위해 엄격한 비(非) AI 규칙 세트를 적용하여, 최종 파일이 완벽하게 생성되어 Siemens 소프트웨어로 바로 가져올 수 있도록 합니다.
결과: 얼마나 잘 작동했는가?
팀은 "시프트 레지스터"(데이터나 물체를 라인을 따라 이동시키는 데 사용됨)라는 특정 유형의 프로그램을 대상으로 이 시스템을 테스트했습니다. 결과는 다음과 같습니다.
- 전체적인 관점: 전체 프로그램의 **90.6%**를 성공적으로 정확하게 번형했습니다.
- 완벽한 점수: 시스템은 상위 수준의 구조(작업, 프로그램, 루틴 구성)에서 **100%**의 정확도를 기록했습니다. 즉, 새로운 코드의 "장(chapter)"을 어떻게 구성할지 정확히 파악했습니다.
- 우수한 성능: 수학 연산(92.7%)과 변수 이름 처리(91.2%)에서 매우 우수한 성과를 보였습니다.
- 취약점: 시스템은 복잡한 "분기(branching)" 논리(예: "만약 이 일이 발생하면 X를 수행하고, 만약 저 일이 발생하면 Y를 수행한다")에서 다소 어려움을 겪었습니다. 여기서는 약 **85.4%**의 정확도를 보였습니다.
- 이유는? 원본 코드는 논리의 "회전(turns)"을 일부 숨기고 있으며, AI는 새로운 형식으로 이를 재구성하는 과정에서 때때로 추측을 해야 하기 때문입니다.
결론
이 논문은 엄격한 규칙에 의해 유도되고 스스로의 설명과 대조되는 검증 과정을 거치는 AI를 사용함으로써, 서로 다른 벤더 간의 산업용 기계 코드를 높은 정확도로 자동 번역할 수 있다고 주장합니다. 아직 완벽하지는 않지만(특히 복잡한 분기 처리 부분에서), 이 "AI + 엄격한 규칙" 접근 방식이 공장이 특정 브랜드의 장비에 종속되는 것을 막는 실행 가능한 방법임을 입증합니다.
참고: 저자들은 이 작업이 특정 테스트 케이스에 대한 아키텍처 검증임을 밝히고 있습니다. 그들은 이 기술이 아직 모든 가능한 산업적 시나리오에 적용될 준비가 되었다고 주장하지 않으며, 임상적 또는 의료적 용도에 대해서도 언급하지 않습니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.