우리 팀은 최소한의 처리로 외부 장치에 대한 간단한 실시간 IO가 필요한 산업 프로세스를 제어하기 위해 PLC를 사용하기로 결정했습니다. 그러나, 우리는 정확한 출력이 런마다 다를 것으로 예상하고 (사실, 주어진 런은 거의 반복 될 수 없으며) 작업자는 PLC / 소프트웨어 프로그래밍 경험이 없을 것입니다.
실제 제품을 공개 할 수는 없지만 가장 좋은 비유는 PLC가 실시간으로 다른 밸브의 개폐를 정확하게 제어하는 산업용 스무디 메이커를 설계하는 것입니다. 운영자는 당사의 소프트웨어를 사용하여 다양한 시약의 주문형 추가 순서 및 관련 중장비 (예 : 산업용 믹서)의 온 / 오프를 설계합니다.
당면 과제는 다음과 같습니다. 현재 접근 방식은 작업자가 제공하는 명령 (10ms 동안 밸브 A, 20ms 동안 밸브 B)을 래더 로직 및 PLC 기계 코드로 변환하는 자체 컴파일러를 작성하는 것입니다. 그런 다음 자체 컴파일 된 프로그램을 직렬을 통해 PLC로 직접 다운로드합니다. 이 모든 과정을 자동화해야 작업자가 일련의 단계를 수행 한 후 버튼을 클릭하기 만하면됩니다.
그러나 내 연구에도 불구하고 1) API가있는 컴파일러가 있거나 컴파일러를 작성할 수 있도록 PLC 기계 코드에 대한 충분한 정보를 게시하고 2) PLC로 프로그램을 직접 다운로드하는 것을 지원하는 단일 PLC 공급 업체를 찾지 못했습니다. 공급 업체의 프로그래밍 소프트웨어 (CX- 프로그래머, Atmel 스튜디오 등)를 사용하지 않습니다.
나는 우리가 잘못된 접근법을 취하고 있거나 적어도 어떤 제품을 찾아야할지 모릅니다. I / O는 자체 보드의 구축을 정당화 할 수있을만큼 단순하지만 우리가 찾고있는 기능, 즉 높은 수준의 PC 소프트웨어와의 PLC 상호 작용은 사용할 수없는 것 같습니다.
이상적으로는 전체 프로그램을 한 번에 PLC로 다운로드하고 한 번에 하나씩 명령을 보내지 않고 싶습니다. PLC (또는 우리가 사용하는 모든 장치)에서 모든 명령의 실행은 실시간이어야합니다.
더 큰 프로그램으로 전체 프로세스를 자동화 할 수 있도록 머신 코드의 컴파일 및 다운로드를 지원하는 상용 PLC가 있습니까? 고급 언어로 작성된 PC 소프트웨어로 작성된 PLC로 실시간 프로그램을 다운로드 할 수있는 다른 방법이 있습니까?