편집 기록

편집 기록
  • 프로필 QbQi님의 편집
    날짜2022.11.16

    PLC 통신값 엑셀저장시 저장값에 L이 붙어서 저장되는데 해결방법 문의


    import pandas as pd
    import os
    import serial
    import csv
    
    ser = serial.Serial('COM3', 9600, timeout=1)
    
    ser.write(bytes(chr(5) + '00RSS0106%DW100' + chr(4), encoding = "utf-8"))
    
    result = ser.readline().decode('utf-8')
    
    if result[:1] == chr(6):   
    
        int(result[-5:-1], 16)   
    
    elif result[:1] == chr(21):
    
        print('Error = ' + result[-5:-1])  
    
    date = result[10:]
    
    print(date)
    
    from collections import OrderedDict 
    VS = OrderedDict(   
        [
            ('D100', [date])    
        ]
    ) 
    df = pd.DataFrame.from_dict(VS) 
    
    if not os.path.exists('C:/Users/jj/Desktop/py/데이터확인.csv'):
        df.to_csv('C:/Users/jj/Desktop/py/데이터확인.csv', index=False, mode='w', encoding='utf-8-sig')
    else:
        df.to_csv('C:/Users/jj/Desktop/py/데이터확인.csv', index=False, mode='a', encoding='utf-8-sig', header=False)
    

    엑셀저장값

    D100
    6B23
    6B48
    002C
    0048
    00F6
    0197
    0014
    004F
    007F
    

    엑셀저장값중 L 을 읽어오기 싶지 않습니다. L=[\x03] 인것같습니다.

  • 프로필 a01066927135@gmail.com님의 편집
    날짜2022.11.16

    PLC 통신값 엑셀저장시 저장값에 L이 붙어서 저장되는데 해결방법 문의


    import pandas as pd import os import serial import csv

    ser = serial.Serial('COM3', 9600, timeout=1)

    ser.write(bytes(chr(5) + '00RSS0106%DW100' + chr(4), encoding = "utf-8"))

    result = ser.readline().decode('utf-8')

    if result[:1] == chr(6):

    int(result[-5:-1], 16)   
    

    elif result[:1] == chr(21):

    print('Error = ' + result[-5:-1])  
    

    date = result[10:]

    print(date)

    from collections import OrderedDict VS = OrderedDict(
    [ ('D100', [date])
    ] ) df = pd.DataFrame.from_dict(VS)

    if not os.path.exists('C:/Users/jj/Desktop/py/데이터확인.csv'): df.to_csv('C:/Users/jj/Desktop/py/데이터확인.csv', index=False, mode='w', encoding='utf-8-sig') else: df.to_csv('C:/Users/jj/Desktop/py/데이터확인.csv', index=False, mode='a', encoding='utf-8-sig', header=False)

    //////////////// 엑셀 CSV 저장값 표시 D100 6B23 6B48 002C 0048 00F6 0197 0014 004F 007F

    엑셀저장값중 L 을 읽어오기 싶지 않습니다. 007F <------- L