• 제품선택
  • 더블워드, 워드, 부동 소수점 데이터 연산 방법입니다.  

    –         더블워드/부동소수점 연산의 경우 지정어드레스에 +1까지 점유 하게 됩니다.  

     

    –         더블워드 연산의 경우 명령식 앞에 “D” 붙여주시면 됩니다.(예 : DADD, DSUB)

     

    –         부동소수점 연산의 경우 명령식 앞에 “E” 붙여주시면 됩니다.(예 : EADD, ESUB) 


                  *  부동소수점 연산은 XP, PLCS CPU만 지원됩니다.    
     

     

    [예제]

    *   ADD 명령어
     

              S1으로 지정된 데이터와 S2로 지정된 데이터를 덧셈하여 그 결과를 D로 지정된 영역에 저장합니다. 

              (“CICON > 도움말 > 도움말 – PLC공통 > PLC 명령어 > 응용 명령 상세 > 산술 연산 명령> BIN사칙연산(덧셈) : ADD, DADD, ADDP, DADDP” 참조)

     

    1.       워드 연산

     M00이 ON이 되었을 때 100과 D0을 덧셈하여 D100에 저장하는 프로그램
    예) D0이 5일 때 D100의 값은 105가 됩니다.

    2.       더블워드 연산

     M00이 ON이 되었을 때 65536(H00010000)과 D0을 덧셈하여 D100에 저장하는 프로그램  

           예) D0~D1이 16(H00000010)일 때 D100(D100~D101)의 값은 65552(H00010010)가 됩니다.


          3.       부동소수점 연산

           
           M00이 ON이 되었을 때 12.34와 D0~D1 부동소수점데이터(Float)을 덧셈하여 D100~D101에 부동소수점 데이터(Float)를 저장하는 프로그램  

           예) D0~D1이 56.78일 때 D100~D101의 부동수소점 데이터(Float)는 69.12이 됩니다.

    l    자세한 데이터 형태에 따른 연산은 “CICON > 도움말 > 도움말 – PLC공통 > PLC 명령어 > 응용 명령 상세”에서 참조해주시기 바랍니다. 

  • 안녕하세요, CIMON입니다.

     

    어드레스 값이 이상하게 출력되는 경우, 다음 사항을 확인하여 주시기 바랍니다.

    • 스캔 프로그램 내에서 어드레스를 중복으로 사용
    • 산술 명령 이용 시 사용한 어드레스에 중복 영역이 발생

     

    다음은 CICON에서 해당 증상을 확인 및 수정하는 방법입니다.

     

    [점검 사항 – 크로스 레퍼런스 활용]

    1. CICON의 크로스 레퍼런스라는 기능을 활용하여 프로젝트 내에서 중복된 어드레스가 있는지 확인합니다.

    (1) 메인메뉴에서 [도구] -> [Cross Reference] 메뉴를 선택합니다.

    (2)  ‘디바이스별 보기’ 영역에서 [중복 사용] 버튼을 클릭합니다.

    (3) 중복을 확인할 디바이스 영역을 선택합니다.

    디바이스 확인 후, 중복으로 인해 잘못된 값이 쓰이는 경우 다른 어드레스를 이용하시기 바랍니다.

     

    [점검 사항 – 명령어 오퍼랜드 확인]

    1. 산술 명령이나 기타 더블워드 연산 관련 명령어 사용 시, 어드레스가 중복 될 가능성이 있습니다.

    • 워드와 워드 연산 시 두개의 워드로 저장되는 경우

    (S1과 S2가 연산 시 -> D, D+1)

    = 16Bit Binary 사칙 연산 명령어 (DIV(P), MUL(P))

    = BCD 4자리 사칙 연산 명령어 (BMUL(P), BDIV(P)

     

    • 두 개의 워드와 두 개의 워드 연산 시 두 개의 워드로 저장되는 경우

    (S1, S1+1과 S2, S2+1가 연산 시 → D,D+1)

    = 실수 사칙 연산 (EADD(P),ESUB(P),EMUL(P),EDIV(P))

    = BCD 8자리 사칙연산 (DBADD(P), DBSUB(P), DBMUL(P), DBDIV(P))

    = 32Bit Binary 사칙 연산 (DADD(P), DSUB(P), DWDIV(P))

     

    • 두 개의 워드와 두 개의 워드 연산 시 네 개의 워드로 저장되는 경우

    (S1, S1+1과 S2, S2+1가 연산시 → D, D+1, D+2, D+3)

    = 32Bit Binary 사칙 연산 (DDIV(P), DMUL(P))

     

    (예제)

    1. DIV(P)

    • 내부 접점 신호 M00이 ON 하였을 때 D0000의 데이터와 D0001의 데이터를 나눗셈하여 D0003에 몫, D0004에 나머지를 저장하는 프로그램

    2. DDIV(P)

    • 내부 접점 신호 접점 M01이 ON 하였을 때 D0000, D0001의 데이터와 D0002, D0003의 데이터를 나눗셈하여 D0004, D0005에 몫, D0006, D0007에 나머지를 저장하는 프로그램

    3.  MUL(P)

    • 내부 접점 신호 M02이 ON 하였을 때 D0001의 데이터와 D0002의 데이터를 곱셈하여 D0020에 하위 워드 데이터, D0021에 상위 워드 데이터를 저장하는 프로그램

    4. DMUL(P)

    • 내부 접점 신호 접점 M03이 ON 하였을 때 D0000, D0001의 데이터와 D0002, D0003의 데이터를 곱셈하여 D0004, D0005, D0006, D0007에 결과 데이터를 저장하는 프로그램

     

    각 명령어의 자세한 내용은 CICON 도움말에서 확인하여 주시기 바랍니다.

     

    언제나 고객을 먼저 생각하는 CIMON이 되겠습니다.

    감사합니다.