우리는 다양한 로크웰 오토메이션 PLC와 대화하기 위해 cpppo을 평가 중입니다. 우리는 주소 범위가 "N25 : 00"(N = 정수, 파일 번호 25, 파일 오프셋 0)이지만 EtherNet/IP는 @<class>/<instance>/<attribute>
을 원할 것 같습니다.PLC 파일 주소/시작 주소를 EtherNet/IP로 변환 @<class>/<instance>/<attribute>
어떻게 하나에서 다른 언어로 번역 하시겠습니까?
태그가 이러한 PLC에 정의되어있는 경우 태그 목록이나 정보를 얻을 수있는 방법이 있습니까? 우리는 PLC를 변경할 능력이 없으며 일반적으로 PLC에서 래더 논리/구성을 볼 수 없습니다.
cpppo의 list_identity, list_interfaces 및 list_services 모든 작업을하지만, 번역 보인다 아무것도 반환하지 않습니다 당신은 어떤 유형의 게이트웨이가 필요합니다 같은
List Services 0 from ('10.91.xxx.yyy', 44818): {
"count": 1,
"item[0].communications_service.capability": 32,
"item[0].communications_service.service_name": "Communications",
"item[0].communications_service.version": 1,
"item[0].length": 20,
"item[0].type_id": 256
}
List Interfaces 0 from ('10.91.xxx.yyy', 44818): {
"count": 0
}
@pjkundert 어떤 생각? – JimB
안녕하세요, Jim; 사용자가 지정한 주소 지정은 실제로 Modbus 주소 지정입니다. 일부 * Logix PLC (아마도 이들 모두가 가능)는 EtherNet/IP CIP 외에도 Modbus/TCP I/O를 지원합니다. 내가 이해할 수있는 것은 데이터가 두 프로토콜 모두에서 가능하다는 것입니다. Modbus/TCP 하에서는 N25 : 00 방법으로 해결 될 것입니다. EtherNet/IP CIP의 주소는//입니다. 그러나 Logix PLC에서이 기능을 설정 한 적이 없으므로 N25를 통해 제공되는 것과 동일한 데이터에 해당하는 CIP 주소가 무엇인지 발견하는 방법을 모르겠습니다. 모드 버스 어드레싱. –
pjkundert
감사합니다. 우리는 꽤 많은 Modbus를 수행했으며, 이것은 내가 본 어떤 것과도 일치하지 않습니다. Modbus는 일반적으로 40001 범위의 정수로 단일 주소를 가지고 있습니다. 이 주소 지정은 로크웰 (Allen-Bradley)의 DF1 프로토콜 (이 PLC는 해당)과 맞지만, 이더넷이 아닌 RS-232입니다. 나는 EtherNet/IP가 확장되기를 바랐다. – JimB