INF-1019 Programmation en temps réel La programmation du Robot Pneumatique et de l’interface 30402 FischerTechnik Sujets Robot Pneumatique Matériel Programmation Interaction avec l’interface d’Entrées/Sortie Opérations, commandes et contrôle
Robot Pneumatique: Matériel Station de triage Pompe pneumatique Cylindre pneumatique
Robot Pneumatique: Matériel Pompe pneumatique Cylindre Valve de non-retour Moteur Chambre à air comprimé
Robot Pneumatique: Matériel Valve pneumatique Une valve pneumatique permet la circulation de l’air dans la canalisation. Permet le déplacement horizontal du cylindre pneumatique Une valve pneumatique possède deux états de fonctionnement: fermé ou ouvert.
Robot Pneumatique: Matériel Valve pneumatique Air comprimé Core Ressort Cylindre Bobinage Évacuation
Robot Pneumatique: Matériel Cylindre pneumatique
Robot Pneumatique: Matériel Cylindre pneumatique (fonctionnement: sortie du cylindre)
Robot Pneumatique: Matériel Cylindre pneumatique (fonctionnement: entrée du cylindre)
Robot Pneumatique: Matériel Cylindre pneumatique (fonctionnement: algorithme, séquence d’activation des moteurs M1 (V1) et M2 (V2)) 1-2 sec 1-2 sec
Robot Pneumatique: Matériel Cylindre pneumatique (Contexte du robot pneumatique: fonction de triage)
Robot Pneumatique: Matériel Cylindre pneumatique (Contexte du robot pneumatique: fonction de triage)
Robot Pneumatique: Matériel Poussoir mécanique
Interaction avec l’interface d’Entrées/Sorties (30402) Pour contrôler l’interface (30402) l’ordinateur transmet une commande de deux octets Le premier octet indique à l’interface quelles sont les données en entrées à lire Le second octet permet d’activer les sorties analogiques (0-9V) permettant entres autres d’alimenter les moteurs L’interface 30402 retourne pour sa part, un ou trois octets Octet B1 (premier octet envoyé, commande) 193: Lecture des entrées digitales E1..E8 197: Lecture des entrées digitales E1..E8, et l’entrée analogique EX 201: Lecture des entrées digitales E1..E8, et l’entrée analogique EY
Interaction avec l’interface d’Entrées/Sorties (30402) Octet B2 (second octet envoyé, contrôle des moteurs) Bit 0: Moteur 1 ccw (1) Bit 1: Moteur 1 cw (2) Bit 2: Moteur 2 ccw (4) Bit 3: Moteur 2 cw (8) Bit 4: Moteur 3 ccw (16) Bit 5: Moteur 3 cw (32) Bit 6: Moteur 4 ccw (64) Bit 7: Moteur 4 cw (128)
Interaction avec l’interface d’Entrées/Sorties (30402) Octet B3 (premier octet retourné, entrées digitales) Bit 0: E1 état 0 ou 1 (on/off) (Masque: 1) Bit 1: E2 état 0 ou 1 (on/off) (Masque: 2) Bit 2: E3 état 0 ou 1 (on/off) (Masque: 4) Bit 3: E4 état 0 ou 1 (on/off) (Masque: 8) Bit 4: E5 état 0 ou 1 (on/off) (Masque: 16) Bit 5: E6 état 0 ou 1 (on/off) (Masque: 32) Bit 6: E7 état 0 ou 1 (on/off) (Masque: 64) Bit 7: E8 état 0 ou 1 (on/off) (Masque: 128)
Interaction avec l’interface d’Entrées/Sorties (30402) (Schéma de branchement)
Interaction avec l’interface d’Entrées/Sorties (30402) (Schéma du matériel)
Interaction avec l’interface d’Entrées/Sorties (30402) (Algorithme) NBPIECETRIEES = 0 TTQ NBPIECESTRIEES <= NBPIECE – 2 FAIRE SI COULEURPIECE == NOIRE ALORS M1: motor = 1 Wait(500 ms) M1: motor = 0 // positionnement du trieur de pièces vers la droite. M3: motor = 16 Wait(2500 ms) M3: (motor = 0) // recentrer le trieur de pièces. SINON // PIECE BLANCHE M2: motor = 4 M2: motor = 0 Wait(3500 ms) M3: motor = 0 // recentrer le trieur de pièces. FINSI NBPIECESTRIEES ++
Interaction avec l’interface d’Entrées/Sorties (30402) (Algorithme) SI (E1 : e1e8 & 1 == 1) COULEURPIECE = pièce blanche SINON // e1e8 &1 == 0 COULEURPIECE = pièce noire M4: motor = 64 // actionner le poussoir TTQ qu’il ne revienne sur la butée Wait(2000 ms) M4: motor = 0 // permet de pousser la prochaine pièce sous le détecteur de couleur et pousser la précédente sous le trieur FINTTQ