Académique Documents
Professionnel Documents
Culture Documents
Les véhicules à guidage automatique ou en anglais Automatic Guided Vehicles (AGV) sont des robots
mobiles guidés par des marquages au sol, par des rayons lasers ou utilisant des systèmes de vision. Ils sont de
plus en plus employés dans des usines ou des entrepôts pour déplacer des charges.
PRÉSENTATION DU MATÉRIEL
L’architecture matérielle du robot est présentée sur la figure 2. Elle est composée de :
➢ Un système de communication sans fil (RF et WIFI) pour pouvoir communiquer avec la salle de contrôle
et de supervision.
➢ Un système de pilotage automatique qui permet de réguler la vitesse des moteurs, à l’aide des codeurs
incrémentales. Il permet également de suivre les indications au sol par des capteurs Infra-Rouge IR.
➢ Un système de détection d’obstacle qui sert à mesurer la distance par rapport aux éléments de son
environnement à travers des capteurs de distance à Ultrasons. Il utilise également des capteurs à contacts
mécaniques pour détecter les chocs.
➢ Un système de levage qui permet de soulever et de mesurer le poids des charges à transporter par le robot.
➢ Un système de localisation qui permet au robot de connaitre sa position absolue sur le terrain, par
l’utilisation d’un capteur gyroscopique, d’une boussole, et de détecteurs de balises IR.
➢ Un système de gestion d’énergie qui assure la régulation de charge des batteries Lithium, en mesurant la
température, la tension et le courant.
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
2
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27
La communication interne du robot s’effectue à travers un bus de communication qui exploite le protocole
CAN.
L’architecture matérielle de ce système est présentée sur la figure 2 :
Salle de contrôle et
supervision
Système de contrôle
et communication
RF, WIFI.
Bus CAN
Système de localisation Système de détection
de la position : des obstacles : contact,
Gyroscope, balises, ultrason, laser, vision,
position absolue Alarme,
Système de gestion
d’énergie : régulateur
de charge, mesure
température, courant,
tension, batterie
Ic
IF
Q10. Sur le document réponse DR1, Déterminer la valeur binaire, et hexadécimale à mettre dans CCP1CON
pour activer le mode capture sur chaque front montant du signal d’entrée.
La mesure de la période T d’un signal à l’entrée CCP1, se fait selon le principe suivant :
T
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
6
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27
A chaque front montant du signal sur l’entrée RC2/CCP1, la valeur de TMR1 est copiée dans le registre
CCPR1.
La fonction mesure_vitesse() permet de copier la valeur de CCPR1 dans la variable front1 à la détection
du 1er front, puis dans la variable front2 à la détection du 2ème front, et de calculer ensuite la valeur de la période
T et celle de la vitesse.
Q11. Sur le document réponse DR1, Compléter la fonction float mesure_vitesse() qui doit gérer l’interruption
TMR1, en respectant l’algorithme suivant :
- Remise à zero du flag CCP1IF (bit 2 du registre PIR1) ;
- Attendre jusqu’à ce que CCP1IF passe à 1 ;
- Mémoriser CCPR1 dans la variable front1
- Remise à zero du flag CCP1IF (bit 2 du registre PIR1) ;
- Attendre jusqu’à ce que CCP1IF passe à 1 ;
- Mémoriser CCPR1 dans la variable front2
- Calcul de : T = front2 – front1 ;
1
- Calcul de fréquence = 𝑇 * 106
- Calcul de vitesse ;
- Retour de la valeur de vitesse ;
Dans le cas de faibles vitesses du moteur, la durée de la période est très grande, ce qui générera des
débordements de comptage du TMR1.
Un débordement du TMR1 correspond à une durée égale au modulo du compteur (216 pour le compteur
TMR1 de 16bits) ce qui correspond à une durée de 65536 µs.
Pour le calcul de la période T, Il faut donc prendre en considération le nombre de débordement du TMR1.
Q12. Déterminer la nouvelle expression de la période T du signal à l’entrée CCP1 en fonction de front1,
front2, et de nbDebordement.
Pour compter le nombre de débordement, l’interruption TMR1IE doit être activé, en mettant les bits PEIE
et GIE du registre INTCON à 1, ainsi que le bit TMR1IE du registre PIE1.
Q13. Sur le document réponse DR2, Déterminer la valeur binaire, et hexadécimale à mettre dans INTCON
et PIE1.
Q14. Sur le document réponse DR2, compléter la fonction void interrupt() qui permet d’incrémenter la
variable nbDebordement, en respectant l’algorithme suivant :
Si le flag TMR1IF (bit 0 du registre PIR1) est à 1 alors :
- Incrémenter nbDebordement ;
- Mettre à 0 le flag TMR1IF.
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
7
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27
Ce module fournit une impulsion ECHO de durée T proportionnel à la distance qui sépare l’obstacle du
robot. Un circuit FPGA (Circuit_Mesure_T) est utilisé pour fournir une valeur numérique N proportionnelle à la
distance, en comptant le nombre d’impulsion CLK_1MHz (de durée 1us) pendant la durée T de l’impulsion
ECHO.
QC QR
EN
Le circuit Circuit_Mesure_T utilise les composants compteur et registre pour fournir la valeur numérique N
Q19.Sur le document réponse DR3, Compléter l’entité du Circuit_Mesure_T.
Q20.Sur le document réponse DR3, Compléter l’architecture du Circuit_Mesure_T.
Le système de gestion d’énergie utilise un ensemble de capteurs (température, tension et courant) pour
réguler la charge de la batterie.
Le convertisseur analogique numérique (PCF8591P) transmet au microcontrôleur, les données issues des
capteurs via le bus I2C.
Le schéma bloc fonctionnel du système est illustré sur la figure 11 :
5V
5V
Les différents nœuds sont équipés de microcontrôleurs et des interfaces matérielles CAN haute vitesse.
Le bus CAN du robot fonctionne en mode Standard 2.0A, son fonctionnement est présenté en ANNEXE 5.
Q32. Sur le document réponse DR5, compléter le tableau qui indique la taille en bits des différents champs
de la trame de données du standard CAN 2.0A.
Q33. Calculer la longueur minimale et maximale en bits de la trame de données du standard CAN 2.0A.
Tous les nœuds connectés sur le bus CAN, transmettent leurs données avec un débit constant de 250 kbits/s.
Q35. Calculer la durée de transmission d’un bit et en déduire la durée de transmission d’une trame de 8
octets de donnée.
Q36. Déterminer le nombre maximum de trames de 8 octets de données pouvant circuler sur le bus en une
seconde.
A un instant donné, les trois nœuds SCC, SP et SL souhaitent émettre leurs messages d’identificateurs
respectifs 0x71E, 0x72E et 0x75E.
Q37. Sur le document réponse DR5, compléter les chronogrammes du processus d’arbitrage.
Q38. Sur le tableau du document réponse DR5, préciser les nœuds et les instants de perte d’arbitrage.
Pour éviter de longue suite de bits dominants ou récessifs, chaque contrôleur CAN d’un nœud introduit
volontairement dans la trame à transmettre des bits de bourrage (Stuffing).
Q39. Le nœud SLP envoie un message d’identificateur 0x7C1. Sur le document réponse DR5, Donner en
binaire le champ identificateur avec et sans bourrage.
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
12
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27
Barème de notation
Q8. T1CON
- - T1CKPS1 T1CKPS0 T1OSCEN ̅̅̅̅̅̅̅̅̅̅̅
𝐓𝟏𝐒𝐘𝐍𝐂 TMR1CS TMR1ON
Q10. CCP1CON
- - CCPxX CCPxY CCPxM3 CCPxM2 CCPxM1 CCPxM0
PIE1
PSPIE ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE
Q14.
int nbDebordement=0;
void interrupt() {
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
}
Q15.
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity compteur is
port(……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
end compteur;
Q16.
Architecture rtl of compteur is
begin
process(clk,R)
begin
if ………………………………………………………… then -- Test de R
QC <= ………………………………; -- Remise à 0 de QC
elsif ………………………………………………………… then -- front descendant de clk
if EN = '1' then
QC <= ………………………………; -- incrementer QC
end if;
end if;
end process;
end ……………………;
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
15
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27
Q21.
Nombre de canaux Plage de tension d’entrée Technique de conversion Résolution en bits
Q23.
Tension analogique VAI0 N en décimale N en hexadécimale
3V
Q27.
void write_Config(char c) {
char ack;
……………………………………………………………………………………
ack = I2C_write(…………………………………);
if (ack==0) I2C_write(…………………………………);
……………………………………………………………………………………
}
Q28.
TXSTA
CSRC TX9 TXEN SYNC - BRGH TRMT TX9D
RCSTA
SPEN RX9 SREN CREN ADDEN FERR OERR RX9D
Q31.
; Attendre jusqu’à ce que le bit TXIF du registre PIR1, passe à 1
loop BTFSS ………………………
GOTO loop ;
; Ecriture du caractère 0x19 dans TXREG
……………………………….
……………………………….
Q32.
Champ SOF Arbitrage Commande Données CRC ACK Fin de trame
Nombre de bit
Q37.
Q.38
Nœud Instant de perte d’arbitrage
Q.39
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
18
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27
ANNEXE 5
r r
1 0
Page
Sujet de l’Examen National du Brevet de Technicien Supérieur - Session de Mai 2021 -
27
Filière : Systèmes Electroniques - SE - Épreuve : Electronique
27