import os
import serial

# Configurer le port série
ser3 = serial.Serial(
    port='COM3',
    baudrate=9600,
    bytesize=serial.SEVENBITS,
    parity=serial.PARITY_EVEN,
    stopbits=serial.STOPBITS_ONE,
    timeout=1
)

ser4 = serial.Serial(
    port='COM4',
    baudrate=9600,
    bytesize=serial.SEVENBITS,
    parity=serial.PARITY_EVEN,
    stopbits=serial.STOPBITS_ONE,
    timeout=1
)

try:

    while True:
        

        
        # Envoyer une commande pour obtenir le poids
        ser4.write(b'W\r\n')
        ser3.write(b'W\r\n')  # Remplacez 'P\r\n' par la commande correcte
        response3 = ser3.readline().decode('utf-8').strip()
        
        print('appuier sur print de la blance')
        while True:

            response4 = ser4.readall().decode('utf-8').strip()
            if response4:
                break
        y = 0
        if response4:
            #print(f"Poids mesuré : {response}")
            bachir = response4.split('\n')
            
            y = bachir[2].replace(' ','') 
            y = y.replace('Gross','')
            y = y.replace('kg','')
            print('le poids global de la caise:',y)
        else:
            print("Aucune donnée reçue. Vérifiez la connexion de port COM4.")

        x= 0
        if response3:
        
            poids = response3.split(',')
            
            
            x = poids[2].replace(' ','')
            x = x.replace('+','')
            x = x.replace('kg','')
            print('le poids unitaire de la pièce :',x)

        else:
            print("Aucune donnée reçue. Vérifiez la connexion avec le port COM3.")
        
        pu = float(x)/5

        nbrpcs = float(y)/pu
        print('le poids unitaire de la pièce :',pu)
        print('nombre de pièces = ',round(nbrpcs))

except Exception as e:
    print(f"Erreur : {e}")
finally:
    ser4.close()
    ser3.close()
