Vous êtes sur la page 1sur 89

1

INTRODUCTION

L’informatique apporte son lot de changements profonds dans


tout le domaine de la vie. Plus largement elle réorganise des
nombreuses industries.
L’informatique, profite à l’ensemble des services de
l’entreprise (start-up, PME, etc.). Dans les industries, la mutation
vers les nouvelles technologies est devenue autant un vecteur de
performance qu’une démarche nécessaire. L’augmentation des options
et des équipements connectés dans un milieu de production, impose le
choix d'interconnexions de type bus (CAN J1939, profibus,..). Mais
comment s’y retrouver dans la multitude de protocoles et de systèmes
de communication.
Les systèmes de communication de type bus de terrain sont
devenus de véritables standards dans de nombreuses applications en
particulier le BUS CAN qu’on trouve dans (véhicules, automatismes
industriels, domotiques etc…). Ce système de communication présente
de nombreux avantages qui séduisent de plus en plus les industriels.
Grace à ce BUS, il y a eu possibilité de résoudre le
problème de câblage traditionnel en limitant la connectique. Mais ce
réseau par lui-même nécessite une liaison intermédiaire pour
permettre aux usagers de le contrôler et le gérer.
Le CAN n’étant pas du tout une technique nouvelle dans ce
siècle présent, et ne constitue pas un terme de nouvelle invention
technologique mais que nous avons juste adapté en apportant notre
originalité qui est un adaptateur CAN-USB pour répondre aux
problèmes de gestion dans des industries.
2

1. PROBLEMATIQUE
Le réseau CAN étant un réseau industriel, a eu à faciliter
l’interconnexion et communication entre équipements industriels,
mais en cas de problème dans ce réseau de terrain le gestionnaire
aura l’obligation de vérifier tous les nœuds pour trouver le
problème, ce qui crée la lenteur à la résolution des problèmes.
Au regard du résumé fait ci-haut, nous nous sommes posés les
questions suivantes :

 Par quel mécanisme pourrions-nous gérer un réseau


industriel à partir d’un réseau local ?

 Quel impact aura ce système dans les industries ?

2. REVUE DE LA LITTERATURE
Nous ne sommes pas le seul à avoir l’idée sur ce genre de
système, beaucoup l’ont fait avant nous et nous en avons retenu
deux.

 Le premier travail porté sur « conception d’un adaptateur


RS232-I2C permettant la communication dans un RLI au sein de
l’usine de traitement d’eau de la CITE BELLEVUE », un thème
présenté et défendu par TONA MABIALA ABISDON dans le cadre de
son Mémoire de fin d’étude à l’Isipa. Dans sa problématique il
avait constaté que la CITE BELLEVUE avait des soucis pour faire
communiquer le réseau industriel au réseau local. Dans son
travail la communication entre réseau industriel et le réseau
local devait se faire par un adaptateur RS232-I2C, nous avons
trouvé que l’adaptateur ne sera pas facile à adapter dans
n’importe quelle industrie. (Tona, 2021)

 Le deuxième intitulé « télégestion d’une usine de


production ATEX CHEMICAL d’Algérie », ce travail était présenté
par BAHAMMA KARIMA de la nationalité Algérienne et de
l’université Mohamed Khider de Biskra Faculté des sciences et
de la Technologie, Département d’informatique. Dans sa
problématique, il avait remarqué les difficultés pour gérer un
réseau de terrain à distance. Il a fini par proposer une
télégestion d’un réseau de terrain pour faciliter le contrôle
et fini par implémentation de son système au sein d’une usine
ATEX CHEMICAL Algérie. (BAHAMMA, 2020)
3

3. HYPOTHESE
Sur ce point nous tenterons à travers ce travail
scientifique, de proposer des solutions aux questions posées dans la
problématique.

 L’adaptateur CAN-USB pourrait faciliter l’accessibilité dans


nos périphériques habituels.

 Nous pensons que ce système permettrait à alléger les tâches


dans des industries grâce à sa facilité d’utilisation.

4. OBJECTIF DE L’ETUDE
L’objectif de notre travail est de simplifier la gestion d’un
réseau industriel à partir d’un réseau local grâce à un adaptateur
CAN-USB.
5. DELIMITATION DU SUJET
En effet, ce travail dispose d’un vaste étendu d’étude,
partant des commandes jusqu'à l’exécution. Ainsi, pour bien mener
nos recherches, nous avons délimité ce travail dans l’espace et dans
le temps.
En ce qui concerne la délimitation spatiale, nous nous
sommes focalisés sur l’étude conceptuelle d’un adaptateur CAN-USB
qui permettra à gérer un réseau CAN à partir d’un réseau local. Notre
champ d’enquête se limite sur les systèmes qu’on a expérimentés au
labo de l’I.S.I.P.A.
Dans le temps, les données qui nous ont permis de réaliser
ce travail ont été récoltées dans la période allant du mois de
janvier 2022 au mois d’août 2022.

6. METHODE ET TECHNIQUE
Pour collecter les informations ou les données relatives à notre
travail de recherche, nous avons exploité les méthodes et techniques
suivantes :
6.1 Méthode
Entant que travail scientifique, ce dernier doit remplir tous
Les principes requis pour sa validation. (KALONDA, 2018) Quelles
méthodes nous ont permis à recueillir les informations utiles à
notre investigation.
4

Méthode descriptive : Elle nous a permis de montrer dans la


problématique, de décrire les problèmes rencontrés par rapport à
l’existant.

Méthode clinique : Elle nous a permis de proposer une hypothèse et


études des solutions et d’opportunité de nature à aider en vue de
résoudre ces causes.

6.2 Technique
Quelques techniques nous ont aidées pour la réalisation de
Notre travail, notamment :
Technique d’observation directe : elle nous a permis de comprendre
directement le fait sans pourtant se contenter des opinions
exprimées par d’autres personnes.
Technique documentaire : cette technique nous a permis de consulter
des ouvrages, revus, T.F.C, site Web ayant trait avec notre sujet.

7. SUBDIVISION DU TRAVAIL
Comme tout travail scientifique, hormis introduction générale
et suivi d’une conclusion générale, ce présent travail comprend
quatre chapitres, répartis comme suit :

Chapitre I : Généralités sur les bus de communication


Chapitre II : Cadrage du projet
Chapitre III : Etudes préalable et détaillée
Chapitre IV : Réalisation
5

CHAPITRE I : GENERALITES SUR LES BUS DE COMMUNICATION

I. INTRODUCTION

Un bus de terrain désigne un système de bus qui relie des


capteurs et actionneurs à un microcontrôleur pour échanger des
informations. Chaque fabricant a développé ses propres mécanismes de
communication pour son bus de terrain de façon à ce que les capteurs
et actionneurs puissent échanger des informations sans problèmes. La
plupart des bus de terrain sont basés sur une architecture maître-
esclave.
Nous pouvons par exemple citer : la liaison RS232, la liaison
USB, la liaison SPI, la liaison I2C, la liaison RS485, la liaison
ETHERNET, la liaison CAN, ...

I.1 QUELQUES DEFINITIONS


I.1.1 bus informatique

Un bus informatique est un dispositif de transmission de


données partagé entre plusieurs composants d'un système numérique.
Le bus informatique est la réunion des parties matérielles et
immatérielles qui permet la transmission de données entre les
composants participants.
Bus matériel : Support physique pour l'échange de données entre
un ou plusieurs composants.
Bus Logiciel : Support logique pour l'échange de données entre
des composants logiciels.
I.1.2 Bus de terrain

Un bus de terrain est un système de communication entre


plusieurs ensembles communiquant dans une zone géographique limitée.

I.1.3 Réseau de terrain

Un réseau de terrain est un bus ou ensemble de bus repartis


dans un terrain.
6

I.2. CARACTERISTIQUE D’UN RESEAU DE TERRAIN

I.2.1 Au niveau de la couche physique


a. Signaux

Les signaux correspondent aux différentes lignes nécessaires


pour la transmission des données. On peut par exemple citer : clock
(horloge) ; data (données) ; …

b. Support de transmission

Un support de transmission n’est rien d’autre qu’un canal


par lequel les signaux sont transportés d’un microcontrôleur à un
autre, à un capteur ou à un ordinateur. Les réseaux de terrain
utilisent souvent :

 Les circuits imprimés ;


 Les fils ou câbles électriques ;
 Les paires torsadées.

Sa portée maximale dépend d’un réseau à un autre.

Figure I.1 support de transmission

c. Topologie
Elle représente la manière dont les équipements d’un
réseau sont reliés entre eux par le support physique.
On distingue généralement les topologies suivantes :

 Topologie en bus ;
 Topologie en étoile ;
 Topologie en anneau ;
 Topologie en hiérarchie ;
 Topologie en maillée.
7

d. Codage

Le codage correspond à la façon dont les données sont


représentées électriquement sur les différents supports de
transmission. Comme nous travaillons en numériques, ces codages ont
pour rôles de représenter les niveaux logiques 0 et 1. Dans ce cours
nous parlons des codages ci-après :

 Codage NRZ ;
 Codage NRZI ;
 Codage Manchester.

e. Interface de ligne

Une interface de ligne est un circuit intégré qui a pour


rôle d’adapter le niveau de tension présent sur le support de
transmission au niveau requis par le protocole et vice versa. Ces
interfaces de liges dépendent d’un réseau à un autre.

I.2.2 Au niveau de la couche liaison


a. Méthode d’accès

C’est une méthode qui permet de réglementer la circulation


des informations dans un réseau et partager les informations entre
les microcontrôleurs du réseau. Ils sont catégorisés par :

 Accès par élection (SELECTING, POLLING, TOKEN) ;


 Accès par compétition (CSMA/CD, CSMA/CA et CSMA/CR) ;
 Accès par Multiplexage (TDMA, FDMA et CDMA).

b. Contrôleur

C’est un circuit intégré qui détient toute la logique de


gestion d’un protocole donné. Il est très important lorsque le
micromoteur n’intègre pas le module qui permet la gestion dudit
protocole.

c. Trame

Une trame n’est rien d’autre que le format de message au


niveau de la couche liaison. Elle comprend plusieurs champs et peut
aussi être décomposé en plusieurs paquets. Elle constitue l’élément
principal dans la définition d’un protocole. (Sammy, 2021, p. 3)
8

d. Topologie logique
La topologie logique représente la manière dont les
informations circulent dans un réseau. Une topologie correspond au
réseau utilisé.

I.3 QUELQUES BUS DE COMMUNICATION

I.3.1 Liaison RS232

1. Présentation

C’est une norme standardisant une voie de communication


série. Il est communément appelé port série. Sur les systèmes
d’exploitation MS-DOS et Windows, les ports RS232 sont désignés par
les noms COM1, COM2, COM3, etc. (Sammy, 2021, p. 8)

Les laissons RS232 sont fréquemment utilisées dans


l’industrie pour connecter différents appareils électroniques
(automate, appareil de mesure, etc.) et pour exploiter certain
réseau sans fil tels que Bluetooth, GSM et WIFI.

Figure I.2 Liaison RS232

2. Fonctionnement

 L’hôte (ordinateur) sélectionne l’esclave (périphérique


série) avec qui il désire communiquer afin d’établir une
connexion entre les deux.

 L’hôte ou l’esclave peut envoyer les données quand il veut


pendant qu’il y a connexion.
9

3.Couche physique

 Signaux

La liaison RS232 utilise deux signaux logiques :

 RXD (RX pour le microcontrôleur) : Recieve data


 TXD (TX pour le microcontrôleur) : Transmit data

 Support de transmission

Le support de transmission est le câble SERIE ou


n’importe quel autre câble muni de trois ou deux fils dont la
longueur maximale est de 15m pour une vitesse de transmission de 96
bit/seconde.

 Topologie

La topologie utilise par la liaison RS232 est du type


étoile. Tous les microcontrôleurs esclave se connectent au PC qui
est considéré comme le maitre.

4. Couche Liaison

 Mode d’accès
Le mode d’accès au bus RS-232 est le selecting, c.à.d. Le
maitre (l’ordinateur) doit sélectionner l’esclave (le
microcontrôleur) avec qui il désire communiquer.

 Trame

La norme RS-232 utilise souvent des UART qui découpent le


flux en trames d’un caractère ainsi constituées :

 1 bit de départ : START


 7 à 8 bits de données : DATA;
 1 bit de parité optionnel : PARITY
 1 ou 2 bits d’arrêt : STOP

Le bit de départ a un niveau logique « 0 » tandis que le bit


d’arrêt est de niveau logique « 1 ». Le bit de donnée de poids
faible(LSB) est envoyé en premier suivi des autres.
10

I.3.2 Liaison USB

1. Présentation

L’USB (Universal Serial Bus) est une norme relative à un bus


informatique en transmission série qui sert à connecter des
périphériques informatiques à un ordinateur ou à tout type
d’appareil prévu à cet effet (Tablette, smartphone). Le bus USB
permet de connecter des périphériques à chaud (quand l’ordinateur
est en marche) et en bénéficiant du plug and Play qui reconnait
automatiquement le périphérique. Il peut fonctionner aux vitesses
ci-dessous :

 1.5 Mbit/ seconde (LOW SPEED) ;


 12 Mbit/ seconde (FULL SPEED) ;
 480 Mbit/ seconde (HI SPEED).

Et il faut noter que ces vitesses correspondent aux


différentes versions de l’USB (1.1 ; 2.0 et 3.0).

2. Fonctionnement

Lors de la connexion du périphérique à l’hôte, ce dernier


détecte l’ajout du nouvel élément grâce au changement de la tension
entre les fils D+ et D-. À ce moment, l’ordinateur envoie un signal
d’initialisation au périphérique pendant 10 ms, puis lui fournit du
courant grâce aux fils GND et VBUS (jusqu’à 100 mA) ; l’étape
suivante consiste à lui fournir son adresse définitivement et
obtenir sa description ; après avoir reçu son adresse, le
périphérique transmet à l’hôte une liste de caractéristiques qui
permet à ce dernier de l’identifier.

L’hôte disposant de toutes les caractéristiques nécessaires


est alors en mesure de changer le pilote approprié et dialoguer
facilement avec ledit périphérique. (Sammy, 2021)

Figure I.3 Liaison USB


11

3.Couche physique

 Signaux

L’architecture USB a pour caractéristique de fournir aussi


l’alimentation électrique aux périphériques. Il utilise les 4
signaux ci-dessus :

 GND : alimentation des périphériques ;


 VBUS : alimentation des périphériques ;
 D- : transmission différentielle des données ;
 D+ : transmission différentielle des données.

 Support de transmission

Le support de transmission est le câble USB dont la longueur


maximale est de 5m.

 Topologie

Un réseau USB a une topologie en étoile (normalement


hiérarchique). Les ports descendent de l’hôte vers les appareils.
S’il n’y a plus des ports, on recourt aux hubs qui permettent de
relier plusieurs appareils à un seul port USB. Le rôle principal des
HUBS est de transférer des données de l’hôte au périphérique. Dans
un réseau USB, on ne peut pas avoir plus 5 niveaux du hub en plus de
l’hub racine.

4.Couche Liaison

 Mode d’accès

Le mode d’accès est le Token c’est-à-dire un système d’anneau


à jeton : chaque nœud dispose successivement du bus. Il n’y a pas de
collision des paquets comme à l’Ethernet, mais nombre maximal de
nœuds est défini (127 en théorie).

 Trame

Chaque trame USB est caractérisée par quatre types


de paquet :

 Un paquet SOF
 Un paquet Token (jeton)
12

 Un paquet Data (données)


 Un paquet Handshake (validation de la transaction)

Soit :

Paquet jeton Paquet data Paquet SOF


Handshake
Tableau I.1 paquets USB

 Paquet SOF (start of frame)

Il représente le début d’une trame et est compose de 5


champs. Soit :

SYNC PID FRAME NUMBER CRC5 EOP


Tableau I.2 paquets USB

SYNC : C’est champ de synchronisation. Il a une taille


d’1 octet pour la basse vitesse et de 4 octets pour la haute
vitesse, il est utilisé pour synchroniser les deux horloges afin de
cadencer les échanges.

PID (Packet Identifier Field) : il permet l’identification


d’un paquet émis. Il est codé sur 8 bits (4 bits pour le codage
et 4 bits complémentés pour la vérification). Par exemple, pour un
paquet jeton OUT, le codage sera 0001 1110.

FRAME NUMBER : il représente le numéro de la trame et est


codé sur 11 bits.

CRC (Contrôle à Redondance Cyclique) : Il permet


de vérifier que la donnée reçue n’a pas été altérée lors
du transfert sur le bus. Il codé sur 5 bits pour un paquet jeton
et sur 2 octets pour un paquet data.

EOP (End Of Packet) : Il détermine la fin du paquet émis et


est codé sur 2 bits.

 Paquet Token (jeton)

Il informe le périphérique que le maitre veut lire


les informations (jeton IN), écrire les informations (jeton OUT),
ou bien commencer les transferts (jeton SETUP) ; (Sammy, 2021)

Ce paquet est considéré comme en-tête d’une trame.


Il est composé de 6 champs, soit :

SYNC PID (In, out, ADDR ENDP CRC5 EOP


setup)
Tableau I.3 paquet Token
13

Avec :

ADDR (adresse) : il détermine l’adresse de l’appareil auquel


le paquet est destiné. Ce champ est codé sur 7 bit, il existe donc
128 possibilité d’adressage (0…127). Le bus USB ne supporte en fait
que 127 équipements au maximum, l’adresse 0 est réservée pour les
périphériques n’ayant pas encore d’adresse attribuée par l’hôte.

ENDP (End point [terminaison]) : ce sont des mémoires


tampons d’écriture et de lecture. Elles permettent de communiquer
via un canal vers l’application. Ce champ est codé sur 4 bits, ce
qui offre 16 points de terminaison par périphérique. L’application
du périphérique USB pourra donc communiquer avec l’hôte via 8 sous
canaux en entrée et 8 sous canaux en sortie. Il est à noter qu’un
périphérique de basse vitesse ne pourra avoir au maximum que 2
terminaisons, que l’on nommera EP0 IN, EP0 OUT, EP1 IN, EP1 OUT.

NB : Un ensemble de terminaisons est appelé interface et un


ensemble d’interfaces est appelé configuration.

 Paquet Data (données)

Il peut atteindre jusqu’ à 1024 octets pour des


périphériques hautes vitesses (8 octets pour des périphériques
basses vitesses et 64 pour des périphériques pleines vitesses). Ce
champ est optionnel, les données sont envoyées par multiples
d’octets. Il est composé de 5 champs, soit :

SYNC PID DATA CRC16 EOP


Tableau I.4 paquet Data

 Paquet handshake (Validation de transaction)

Il permet d’avoir un accusé de réception pour la


transaction :

 Si le handshake est égal à ACK, le paquet a été correctement


reçu,
 Si le handshake est égal à NACK, le périphérique ne peut
temporairement ni envoyer ni recevoir de données,
 Si le handshake est égal à STALL(bloqué), le périphérique est
dans état nécessitant une intervention de l’hôte. Il est
composé de 3 champs, soit :

SYNC PID(ack,nack,stall) EOP


Tableau I.5 paquet handshake
14

 Transaction

Une transaction est un échange entre le maitre et un des


dispositifs. Elle est obligatoirement d’une durée inférieure à 1 ms.
Une transaction commence toujours par l’émission par le maitre
d’un paquet jeton(Token) indiquant l’adresse du dispositif concerné
et le sens des données suivantes. Il existe 4 types de
transactions : (Sammy, 2021)

 Volume(Bulk)
 Contrôle
 Interruption
 Isochrones

 Transaction en volume

Elle est utilisée pour transférer des informations


volumineuses, avec garantie d’acheminement, mais sans garantie
de la bande passante. Ce type de transaction est utilisé par les
dispositifs de stockage.

Elle est structurée de la manière suivante : TOKEN (in/out)


du host+Data+ACK/NAK (réponse).

 Transaction de contrôle

Elle est utilisée pour l’énumération et la configuration des


périphériques. Il convient pour des données de taille restreint ; il
y a garantie de livraison (renvoi des paquets erronés).

Elle est structurée de la manière suivante : TOKEN (setup)


de l’host + Data (host) + ACK/NAK(réponse).

 Transaction d’interruption

Utilisée pour fournir des informations de petite taille avec


une latence faible. Ce ne sont pas des interruptions au sens
informatique du terme : le périphérique doit attendre que l’hôte
l’interroge avant de pouvoir effectuer une telle transaction.
Cette transaction est notamment utilisée par les claviers et les
souris.

Elle est structurée de la manière suivante : TOKEN(in)


du host + Data(device) + ACK(réponse).
15

 Transaction isochrone

Elle est utilisée pour effectuer des transactions


volumineuses (bande passante garantie), et en temps réel. Il n’y
a pas de garantie sur l’acheminement des données. Ce type
de transaction est utilisé pour les flux audio et vidéo.

Elle est structurée de la manière suivante : TOKEN(in/out)


de l’host + Data.

 Descripteur USB

C’est un fichier qui accompagne tout projet basé sur USB et


doit contenir l’identifiant et nom du constructeur, l’identifiant et
le nom du produit, la taille du rapport et d’autres informations.

I.3.3 Liaison SPI

1. Présentation

Une liaison SPI (pour Serial Peripheral Interface) est un


bus de données série synchrone baptisé ainsi par Motorola, qui opère
en mode Full duplex. Les circuits communiquent selon un schéma
maître-esclaves, où le maître s’occupe totalement de la
communication. Plusieurs esclaves peuvent coexister sur un même bus,
dans ce cas, la sélection du destinataire se fait par une ligne
dédiée entre le maître et esclave appelée Slave select (SS).
(Serial_Peripheral_Interface, 2017)

Figure I.4 Liaison SPI

2. Fonctionnement

Une transmission SPI typique est une communication


simultanée entre un maître et un esclave :

 Le maître génère l’horloge et sélectionne l’esclave


avec qu’il veut communiquer par l’utilisation d’un
signal SS
16

 L’esclave répond aux requêtes du maître

A chaque coup d’horloge le maître et l’esclave s’échangent


un bit. Après huit coups d’horloges le maître a transmis un octet à
l’esclave et vice versa. La vitesse de l’horloge est réglée selon
des caractéristique propres aux périphériques.

3. Couche physique

 Signaux

Le bus SPI utilise quatre signaux logiques :

 SCLK- Serial Clock, Horloge (généré par le maître) ;


 MOSI- Master Output, Slave input (géré par maître) ;
 MISO- Master Input, Slave Output (géré par l’esclave) ;
 SS- Slave select, Actif à l’état bas (géré par le
maître).

 Support de transmission

Le support de transmission utilisé ici peut être un câble


électrique ou un circuit imprimé. Et sa longueur maximale est de
3m.

 Topologies

Le réseau SPI peut utiliser les topologies suivantes :

 Topologie en étoile ;
 Topologie en anneau ;

4. Couche Liaison

 Mode d’accès

Le mode d’accès au bus SPI est le selecting, donc le maître


doit sélectionner l’esclave avec qui il désire communiquer, en
mettant le signal SS de ce dernier à Zéro. Au cas où la topologie
physique est en anneau, le mode d’accès le token.
17

 Trames

Les trames d’une liaison SPI dépendent toujours de deux


éléments suivants : la polarité d’horloge(CPOL) et la phase
d’horloge(CPHA).

La polarité d’horloge(CPOL)

Elle détermine le niveau logique au repos de la trame.

 Si CPOL est égale à zéro, le niveau bas correspond


au niveau de repos.
 Si CPOL est égale à un, le niveau haut correspond
au niveau de repos.

La phase d’horloge(CPHA)

Elle détermine la phase d’horloge à laquelle le master


place les données dans la mémoire tampon d’émission.

 Si CPHA est égale à un, les données sont transmises


au moment où l’horloge passe au niveau haut (de bas en
haut), par conséquent la lecture se fait au milieu
du cycle

 Si CPHA est égale à zéro, les données sont transmises


au moment où l’horloge passe au niveau bas (de haut
en bas), par conséquent la lecture se fait à la fin
du cycle.

NB : L’inverse de CPHA est appelé CEDGE (clockedgde)

 Trames

Figure I.5 Trame SPI

La configuration de la SPI est souvent nommée dans


les documentations techniques sous forme de nombre ou de couple,
où le bit de poids fort est CPOL (ClockPolarity) et le bit de poids
faible CPHA (Clock Phase).
18

Mode CPOL CPHA CEDG


0 1
0 0
(0,0)
1 0
0 1
(0,1)
2 1
1 0
(1,0)
3 0
1 1
(1,1)

Tableau I.6 Configuration SPI

Les modes 0 et 3 sont identiques en transmission, seul


change l'état de la ligne d'horloge au repos. C'est pour cette
raison que de nombreux périphériques peuvent être capables de
dialoguer soit en mode 0 et 3, soit en mode 1 et 2.

AVANTAGE ET DÉSAVANTAGE

Avantage

 Communication Full duplex


 Débit assez important par rapport à I 2C
 Simplicité de l'interface matérielle

 Aucun arbitre nécessaire car aucune collision possible


 Les esclaves utilisent l'horloge du maître et n'ont donc
pas besoin d'oscillateur propre
 Ne nécessite pas d’interface de ligne

 Partage d'un bus commun pour l'horloge, MISO et MOSI entre les
périphériques

Désavantage

 Monopolise plus de broches d'un boîtier que l'I2C ou une UART


qui en utilisent seulement deux.

 Aucun adressage possible, il faut une ligne de sélection


par esclave en mode non chaîné.
 Le protocole n'a pas d'acquittement. Le maître peut parler dans
le vide sans le savoir. (Sammy, 2021)
19

 La plupart des implémentations ne tolèrent la présence que d’un


seul maître SPI sur le bus. Néanmoins, on trouve
des circuits intégrés supportant le mode "multi-master",
permettant de partager le bus SPI entre plusieurs maîtres. Les
implémentations pratiques de ce genre restent rares.

 Ne s'utilise que sur de courtes distances contrairement aux


liaisons RS-232, RS-485 ou bus CAN. Néanmoins, il est possible
d'utiliser des tampons de bus, comme des adaptateurs RS-232
(exemple : MAX208), RS485 ou LVDS pour relier un maître
et un esclave avec un câble de quelques mètres. La mise
en œuvre de ces circuits reste délicate car il devient
nécessaire de procéder à des adaptations d'impédance pour
éviter les oscillations parasites.

I.3.4 Liaison I2C

1. Présentation

I2C (Inter-integrated circuit) est un bus informatique qui a


émergé de la « guerre des standards » lancée par les acteurs du
monde électronique. Conçu par Philips pour les applications de
domotique et d’électronique domestique. Il permet de relier
facilement un microprocesseur de la télécommande, réglages des
amplificateurs basses fréquences, tuner, horloge, gestion de la
prise péritel, etc. (Sammy, 2021, p. 37)

Il existe d’innombrables périphériques exploitant ce bus, il


est même implémentable par logiciel dans n’importe quel
microcontrôleur. Le poids de l’industrie de l’électronique grand
public a permis des prix très bas grâce à ces nombreux composants.

Figure I.6 Liaison I2C


20

2. Fonctionnement

Une transmission I2C typique est une communication non


simultanée entre un maître et un esclave :

 Le maître génère l’horloge en envoyant une condition


START
 Ensuite il envoie une adresse codée sur 8 bits pour
designer et préciser l’action que l’esclave doit
faire.
 L’esclave concerné répond envoyant un bit
d’acquittement ACK (ou de non-acquittement NACK)
Au maître,
 Si l’adresse est paire l’esclave doit lire (le
maitre envoi un autre octet) les données et dans cas
contraire, il doit écrire (l’esclave envoi un octet
au maître) les données.
 Le maître arrête l’horloge en envoyant une condition
STOP.

3. Couche physique

 Signaux

La connexion est réalisée par l’intermédiaire de deux


lignes :

 SDA (Serial Data Line) : ligne de données


bidirectionnelles,
 SCL (Serial Clock Line) : ligne d’horloge de
synchronisation bidirectionnelle.

Il ne faut également pas oublier la masse qui doit être


commune aux équipements. Les 2 lignes sont tirées au niveau de
tension VDD à travers des résistances de pull-up (Rp).

Les équipements connectés au bus le sont par des sorties de


type drain ouvert (ou collecteur ouvert) sur les deux lignes SDA et
SCL.

 Support de transmission
21

Comme pour la liaison SPI, le support de transmission peut


être un câble électrique ou un circuit imprimé, avec une longueur
maximale de 5m.
 Topologie

I2C est un bus série synchrone bidirectionnel half-duplex.


Plusieurs équipements, soit maîtres, soit esclaves, peuvent être
connectés au bus.

4. Couche Liaison
 Mode d’accès

Le mode d’accès ici est le polling. C’est-à-dire, le maître


consulte tous les esclaves en envoyant une adresse quelconque.
L’esclave concerné s’active et répond directement au maître.

I.3.5 Liaison RS485

La norme RS485 définie par l’EIA, Electronic Industries


Association, a été publiée en Avril 1983. Ce standard précise les
caractéristiques électriques des émetteurs et des récepteurs pour
une utilisation dans les systèmes multipoints en mode symétrique.

La transmission se fait sur une ligne électrique,


pratiquement une paire torsadée, par des variations de tension en
mode différentiel.

1. Présentation

Un des principaux problèmes des liaisons séries est l’absence


d’immunité pour le bruit sur les lignes de signal. L’émetteur et le
récepteur comparent les tensions par rapport à une masse commune en
ligne (exemple RS232). Un changement dans le niveau du potentiel de
terre peut avoir des effets désastreux. Le bruit limite à la fois
la distance maximale et la vitesse de communication. Avec l’RS485
il n’y a pas une masse commune comme signal de référence.

La transmission est différentielle le récepteur compare la


différence de tension entre les deux lignes, au lieu d’un niveau de
tension absolue sur une ligne de signal.
22

Figure I.7 Liaison RS485


2. Fonctionnement

 Le maître envoie une requête à un esclave


 L’esclave renvoie une réponse en retour
 Ainsi, pas de risque de collision ;
 Polling successif des différents esclaves
 Fonctionnement cyclique
 Le temps de cycle dépend du nombre d’esclaves et la taille
des données échangées.

3. Couche physique

 Signaux

Rs485 s’appuie sur l’UART, par conséquent, elle utilise les


mêmes signaux que ce dernier, à savoir :

 RXD (RX pour le microcontrôleur) : Recieve data


 TXD (TX pour le microcontrôleur) : Transmit data

 Support de transmission

Le support de transmission est du type différentiel. Deux


fils correspondant à des niveaux complémentaires sont donc utiles
pour chaque signal ce qui limite l’influence des bruits extérieurs
et des masses. En bref c’est un câble torsadé d’une longueur
maximale de 1 Km.

 Topologie

La topologie utilisée ici est de type Bus. Il faut noter que


ce bus se termine par une résistance 120 Ω appelée TERM ou BOUCHON.

4. Couche Liaison
23

 Mode d’accès

Le mode d’accès ici est le polling. C’est-à-dire, le


maître consulte tous les esclaves en envoyant une adresse
quelconque. L’esclave concerné s’active et répond directement au
maître.

 Trame

Elle se présente de la manière ci- dessous:

Tableau I.7 Trame RS485

Avec :

Start : Le debut de la trame, il est identifié par un


numéro unique
Adress (adresse): ce champ contient l’adresse de
l’esclave avec qui le maitre veut communiquer
Datalen : Il contient la taille (en octet) des données
à transmettre
Data (données):il contient les données à transmettre
CRC : Il permet de vérifier que les données reçues n’ont
pas été altérées lors du transfert sur le bus.
Stop : ce champ représente la fin de la trame, il est
aussi identifié par un numéro unique.

 Adressage

Les abonnés du bus sont identifiés par des adresses


attribuées par l’utilisateur. L’adresse de chaque abonné est
indépendante de son emplacement physique.

Les adresses vont de 1 à 64 pour le protocole Modbus


et de 1 à 255 en général et ne doivent pas obligatoirement être
attribuées de manière séquentielle. Deux abonnés ne peuvent avoir la
même adresse.
24

 Échange maître vers 1 esclave

Le maître interroge un esclave de numéro unique


sur le réseau et attend de la part de cet esclave une réponse.

 Échange Maître vers tous les esclaves

Le maître diffuse un message à tous les esclaves présents


sur le réseau, ceux-ci exécutent l’ordre du message sans émettre une
réponse.

I.3.6 Liaison ETHERNET

Ethernet est un réseau à diffusion développé à l’origine


par les sociétés Xerox, Intel et Digital Equipement. L’IEEE a
ensuite normalisé ce réseau par la norme IEEE 802.3, reprise ensuite
par l’ISO sous la norme 802-3. (Sammy, 2021, p. 58)
C’est une technologie de niveau liaison du modèle OSI, qui
s’est imposée et équipe actuellement la quasi-totalité des réseaux
locaux d’entreprise (LAN). Le Protocol Data Unit (PDU) transmis par
Ethernet sont appelés des trames.
La transmission se fait sur une ligne électrique,
pratiquement une paire torsadée, par des variations de tension en
mode différentiel.
1. Présentation
Ethernet est fondé sur le principe de membres (pairs) sur le
réseau, envoyant des messages dans ce qui était essentiellement un
système radio captif à l’intérieur d’un fil ou d’un canal commun,
parfois appelé l’’éther. Ainsi l’Ethernet est conçu à l’origine pour
une topologie logique et physique en bus. Chaque pair est identifié
par une clé globalement unique, appelée Adresse MAC, pour s’assurer
que tous les postes sur un réseau Ethernet aient des adresses
distinctes sans configuration préalable.
2. Fonctionnement

 Une des machines de réseau envoie une requête à une


autre en spécifiant son adresse ainsi que celle du
destinateur.
 Toutes les machines reçoivent les messages mais seule la
machine concernée peut répondre.
 Ainsi, risque de collision car toutes les machines
peuvent envoyer des messages quand elles veulent.
25

3.Couche physique

 Signaux

Il a les mêmes signaux que le réseau RS485, la seule


différence est que ce dernier peut fonctionner en full duplex. Il
utilise les 4 signaux suivant :

 TPOUT+(TX+) : transmission différentielle des données ;


 TPOUT-(TX-) : transmission différentielle des données ;
 TPIN+(RX+) : réception différentielle des données ;
 TPIN-(RX-) : réception différentielle des données.

 Support de transmission

Le support de transmission est du type différentiel. Deux


fils correspondant à des niveaux complémentaires sont donc utiles
pour chaque signal ce qui limite l’influence des bruits extérieurs
et des masses. En bref c’est un câble torsadé d’une longueur
maximale de 100m.
 Topologie

La topologie qui était au paravent utilisée était de type


Bus mais actuellement c’est plus la topologie en étoile qui est
utilisée.

4.Couche Liaison

 Méthode d’accès
La méthode d’accès utilisée ici est le CSMA/CR, qui est
l’accès par compétition.

I.3.7 Liaison CAN

1. Présentation
Le protocole CAN (Control Area Network) est un protocole de
communication série qui supporte des systèmes temps réel avec un
haut niveau de fiabilité. Ses domaines d’application s’étendent des
réseaux moyens débits aux réseaux de multiplexages faibles coûts.
26

Il est avant tout à classer dans la catégorie des réseaux de


terrain utilisé dans l'industrie pour remplacer la boucle analogique
20Ma.
2. Fonctionnement

Le protocole est basé sur le principe de diffusion générale :

Lors de transmission, aucune station n'est adressée en


particulier, mais le contenu de chaque message est explicité par une
identification reçu de façon univoque par tous les abonnés. Grâce à
cet identificateur, les stations, qui sont en permanence à l'écoute
du réseau, reconnaissent et traitent les messages qui les
concernent; elles ignorent simplement les autres. (le bus can,
2016)

3.Couche physique

Définit le signal transmis et a pour rôle d'assurer le


transfert physique des bits entre les différents nœuds en accord
avec toutes les propriétés (électriques et électroniques) du
système. Cette couche s'occupe :

 De gérer la représentation du bit (codage,


timing. . .).
 De définir le support de transmission.
 Etc.

 Support de transmission

Généralement, CAN utilise comme support de transmission


une paire torsadée blindée ou non blindée. Les nœuds sont reliés
entre eux par l’intermédiaire d’un bus série équipé de terminateurs
de lignes (résistances de terminaison).

 Topologie

La topologie qui est qui utilisée est de type Bus


27

Figure I.8 Liaison CAN

Le CAN est un bus de terrain, soumis à des parasites


importants. La transmission en paire différentielle permet de
s'affranchir de ces problèmes.

4. Couche Liaison

 MAC (contrôle d'accès au médium) : Règle les accès au


support de communication (aléatoire CSMA/CR, par
consultation, jeton).

 LLC (contrôle de liaison logique) : utilise la couche de


contrôle d'accès au médium pour offrir à l'utilisateur des
services tels que l'émission et la réception de trames,
l'établissement et la fermeture des connexions logiques, la
détection des erreurs de séquencement de trames et le
contrôle de flux.

 Trame
Il existe quatre types de trames pouvant être transmises
sur un bus CAN :

Trames de données : elles sont utilisées pour transporter


des données (messages) de l’application (ou valeurs d’objets) sur le
bus. C’est le producteur d’un identificateur qui émet des trames de
données associées à cet identificateur.

Trames de requête distante : elles sont utilisées par un


nœud (un consommateur) pour demander la transmission de trames de
données par d’autres nœuds (les producteurs) avec le même
identificateur. Le bit RTR (Remote Transmission Request) permet de
distinguer les trames de données des trames de requête.

Le bit RTR est égal à 0 pour une trame de données et à 1


pour une trame de requête.
28

On notera que les trames de données sont prioritaires par


rapport aux trames de requête : quand un producteur et un
consommateur d’un même objet entrent en conflit, c’est la trame
émise par le producteur qui s’impose, ce qui est normal puisque la
trame du producteur répond à la requête faite par le consommateur.

Trames d’erreur : elles sont transmises par un nœud ayant


détecté une erreur. Leur format et utilisation seront détaillés par
la suite.

Trame de surcharge : elles sont utilisées pour demander un


délai entre deux trames de données ou de requête successives Les
trames de données ou de requête sont séparées des trames qui les
précèdent (de quelque type qu’elles soient) par un temps dit
intertame (ce temps doit correspondre à au moins le temps de 3
bits). Les trames d’erreur ou de surcharge ne sont pas séparées des
autres trames par un intertame.

5. Couche Application

Son rôle est de fournir aux applications résidentes tous


les moyens de dialogue. Il s'agit d'une interface utilisateur. Elle
peut être implémentée sous forme d'un protocole supplémentaire comme
CANOpen par exemple.

I.4. CONCLUSION
Dans ce chapitre intitulé généralités sur les Bus, nous
avons défini une liaison de communication comme un système de
communication entre plusieurs ensembles communiquant dans un espace
délimité. Et Nous avons eu à énumérer quelques bus et leurs
fonctionnements.
29

CHAPITRE II : CADRAGE DU PROJET

II. INTRODUCTION
Le cadrage du projet est une étape très capitale, c’est la
phase principale, celle qui donne l’orientation qu’il faut, avant la
planification du projet et son lancement.
Le bon cadrage permet aussi de fixer des objectifs cohérents
et de définir les détails et les budgets afin d’éviter toute
déception.

II.1. PLANIFICATION DU PROJET

Un projet étant un ensemble d’activités ou d’éléments


inter reliés dans le but d’obtenir un résultat unique pendant une
période de temps déterminée et à l’aide d’un budget préétabli des
ressources.
La gestion de projet doit être envisagée comme un système à
la recherche d’équilibre entre les éléments ou activités d’un
projet.

Cette gestion doit se bosser sur les points essentiels suivants :


30

 La spécification du système ;

 Le temps de développement ;

 Le coût de développement.

Pour atteindre les objectifs assignés, tout concepteur


d’un projet devra donc définir une programmation des différentes
tâches ou opérations successives à réaliser de tel enseigne qu’un
ordre soit respecté dans un délai nominal.

II.1.1. Méthodes d’ordonnancement de tâche

Plusieurs méthodes permettant la représentation de problème


d’ordonnancement ont été mises sur pied, nous pouvons épingler :

 PERT : Program Evaluation and Review Technique (Programme ou


projet d’évaluation et répétition des tâches) ;
 CPM : Critical Post Methode ;

 MPM Méthode des potentiels Métra ;

 PDM : Prudence Diagram Methode.

Dans le cas qui nous concerne, parce qu’il est vraiment


difficile d’utiliser toutes ces méthodes, nous options pour la
méthode PERT en estimation triple avec la notation A on A où la
tâche ou l’activité est représenté par un arc tandis que l’élément
par un nœud. Les sommets représentent les étapes dans la
réalisation d’un projet. (Hammer MADERS, 2000)
a. Principes de présentation en PERT

La méthode PERT (Programme Evaluation and Review


Technique) utilise une représentation en graphe permettant
d’optimiser et de planifier l’ordonnancement des tâches.
Cette méthode est utilisée dans la gestion d’un projet
dans le but de trouver la meilleure organisation possible pour
qu’un projet soit terminé dans les meilleurs délais et
d’identifier les tâches critiques, c'est-à-dire les tâches qui ne
doivent souffrir d’aucun retard sous peine de retarder l’ensemble
du projet.
L’arc représente une tâche, la valeur porte sur l’arc
représente la durée (temps).
(i)
31

d(i)

x y

(i): Représente la tâche ou l’activité

d(i) : Représente la durée de la tâche

(x,y): Représente les étapes dans la réalisation du projet ou


extrémités
b. Contrainte dans un graphe

La méthode PERT ne permet de représenter que les tâches


soumises à seul type de contrainte appelée la contrainte de
postérité stricte qui s’énonce comme suit : « une (j) ne peut pas
commencer avant que la tâche (i) qui la précède ne soit
complètement terminée.

Graphiquement, cette contrainte peut être représenté par :

(j ) (i)

x y z

Une étape quelconque y est réalisée si et seulement si


toutes les y qui aboutissent sont terminées, y compris les plus
longues.

II.2. DEBUT DU CADRAGE

II.2.1. Identification des tâches

Pour la réalisation de notre projet, nous avons pu


identifier une série de tâches suivantes :

1. Etude préalable
2. Conception du nouveau système
32

3. Cahier de charge
4. Achat de matériels
5. Montage
6. Programmation et simulation
7. Flashage et test du nouveau système
8. Vérification
9. Formation d’équipe technique

II.2.2 Dénombrement des taches

Une tâche est une action de production qui doit être


inscrit sur un planning.

a. Analyse et détermination des taches

N° Tâche Activité Durée Durée Durée Coût


Antérieur optimiste pessimiste probable
Par jour Par jour Par jour
1 Etude préalable - 3 5 4 50$
2 Conception du 1 2 4 3 200$
nouveau système
3 Cahier de 2 1 3 2 15$
charge
4 Achat de 3 3 5 4 78$
matériels
5 Montage 4 6 9 7 100$
6 Programmation 5 5 7 6 200$
et simulation
7 Flashage et 6 6 9 7 80$
Test du nouveau
système
8 Vérification 7 5 7 6 69$
9 Formation 8 7 12 10 200$
d’équipe
technique
33

Tableau II.1. Recensement des tâches, temps et ressources

II.2.3 calcul des durées

La durée moyenne d’une activité dans une estimation triple


est donnée par la formule :
ai + bi + 4 m i
X̄ i =
6
Avec : -a : la durée optimiste
-b : la durée pessimiste
-m : la durée probable

3+5+ 4( 4 )
X̄ 1 = =4
6
2+4 +4 ( 3 )
X̄ 2= =3
6
1+3+ 4( 2 )
X̄ 3 = =2
6
3+ 5+4 ( 4 )
X̄ 4 = =4
6
6+ 9+ 4 ( 7)
X̄ 5 = =7
6
5+7+ 4 ( 6)
X̄ 6= =6
6
6+ 9+4 ( 7 )
X̄ 7 = =7
6
5+7+ 4 ( 6)
X̄ 8= =6
6
7+12+ 4( 10 )
X̄ 9= =10
6

II.2.4. Graphe PERT


Dépendant aux contraintes illustrées ci-haut, que nous
allons établir le graphe PERT. Ce moyen a pour fin, de présenter
sans ambigüité un plan d’exécution d’un ensemble des tâches à
effectuer.
34

Le PERT (program of évaluation and review technique) est une


méthode consistant à mettre en ordre sous forme de réseau, plusieurs
tâches qui, grâce à leur dépendance et à leur chronologie,
concourent toutes à l’obtention d’un produit fini.

a. Graphe PERT non ordonnée

b. Matrice booléenne

La matrice booléenne est une matrice constituée d’une suite


de 1 et 0, comme ligne et colonne. Ça nous permet d’ordonner le
graphe PERT tout en se rapportant à notre projet.

A B C D E F G h I J
A 0 1 0 0 0 0 0 0 0 0
B 0 0 1 0 0 0 0 0 0 0
C 0 0 0 1 0 0 0 0 0 0
D 0 0 0 0 1 0 0 0 0 0
E 0 0 0 0 0 1 0 0 0 0
F 0 0 0 0 0 0 1 0 0 0
G 0 0 0 0 0 0 0 1 0 0
H 0 0 0 0 0 0 0 0 1 0
35

I 0 0 0 0 0 0 0 0 0 1
J 0 0 0 0 0 0 0 0 0 0
Tableau II.2. Matrice booléenne

c. Calcul des rangs

Rn = { j } Rn−5 ={ e }

Rn−1= {i } Rn−6 ={ d }

Rn−2= { h } Rn−7 ={ c }

Rn−3 ={ g } Rn−8 ={ b }

Rn−4 = { f } Rn−9 ={ a }

Rn−9 =R0

Soit n=9
D’où nous aurons :
R0 = { a } R5 = { f }

R1 ={ b } R6 = { g }

R2 ={ c } R 7 = {h }

R 3 = {d } R 8 = {i }

R 4 ={ e } R9 = { j }

d. Graph pert ordonné

II.2.5 CALCUL DE LA DURÉE OPTIMAL


36

a) Date au plus tôt (DTO)

C’est la date la plus rapprochée durant laquelle il est


possible de réaliser une étape. C’est-à-dire, la date à laquelle la
tâche est réalisée promptement, sans que ses précédentes ne prennent
du retard dans leur exécution.

La date au plus tôt est donnée par la formule :

DTO(x) =max {DTO (a) + d (i)}

Identification:
 DTO(x) : la date au plus tôt de la tâche désignée ;
 DTO(a) : la date au plus tôt de la tâche antérieure ;
 d(i) : la durée de la tâche ciblée.

 DTO(a) =0

 DTO(b) =max {DTO(a) +d (1)}={0+4}=4

 DTO(c) =max {DTO(b) +d (2)}={4+3}=7

 DTO(d) =max {DTO(c) +d (3)}={7+2}=9

 DTO(e) =max {DTO(d) +d (4)}={9+4}=13

 DTO(f) =max {DTO(e) +d (5)}={13+7}=20

 DTO(g) =max {DTO(f) +d (6)}={20+6}=26

 DTO(h) =max {DTO(g) +d (7)}={26+7}=33

 DTO(i) =max {DTO(h) +d (8)}={33+6}=39

 DTO(j) =max {DTO(i) +d (8)}={39+10}=49

b) Date au plus tard (DTA)

C’est une date à laquelle, il faut absolument entamer une


tâche si l’on veut vraiment achever le projet dans le plus bref
délai. C’est-à-dire, la date à laquelle la tâche doit finir au plus
tard sans la compromission du délai du projet.

La date au plus tard est donnée par la formule :

DTA (x) =min {DTA(a) - d(i)}

Identification :
37

 DTA(x) : la date au plus tard de la tâche ciblée ;


 DTA(a) : la date au plus tard de la tâche antérieure ;
 d(i) : la durée de la tâche ciblée.

Pour bien trouver la date au plus tard, il faut calculer de


manière descendant, c’est-à-dire on commence à partir de la dernière
tâche (étape) et on remonte jusqu’à la première tâche.

 DTA (j) =DTO (j)=49

 DTA (i) =min {DTA (j) -d (9)}={49-10}=39

 DTA (h) =min {DTA (i) -d (8)}={39-6}=33

 DTA (g) =min {DTA(h) -d (7)}={33-7}=26

 DTA (f) =min {DTA(g) -d (6)}={26-6}=20

 DTA (e) =min {DTA(f) -d (5)}={20-7}=13

 DTA (d) =min {DTA(e) -d (4)}={13-4}=9

 DTA (c) =min {DTA(d) -d (3)}={9-2}=7

 DTA (b) =min {DTA(c) -d (2)}={7-3}=4

 DTA (a) = min {DTA(b) -d (1)}={4-4}=0

DTA(a) = DTO(a)=0

II.2.6. CALCUL DES MARGES

 Marge libre

La marge libre d’une activité i est donnée par la formule ci-


dessous :

ML (I) = {DTO(x)- DTO(I)-d (I)}

IDENTIFICATION :
 ML(i) : marge libre recherchée de la tâche ciblée (i) ;
 DTO(x) : date au plus tôt de la tâche postérieure ;
 DTO(i) : date au plus tôt de la tâche ciblée (i) ;
 D(i) : la durée de la tâche désignée (i).

 ML (1) = {DTO(b)-DTO(a)-d(1)}={4-0-4}=0

 ML (2) = {DTO(c)-DTO(b)-d(2)}={7-4-3}=0
38

 ML (3) = {DTO(d)-DTO(c)-d(3)}={9-7-2}=0

 ML (4) = {DTO(e)-DTO(d)-d(4)}={13-9-4}=0

 ML (5) = {DTO(f)-DTO(e)-d(5)}={20-13-7}=0

 ML (6) = {DTO(g)-DTO(f)-d(6)}={26-20-6}=0

 ML (7) = {DTO(h)-DTO(g)-d(7)}={33-26-7}=0

 ML (8) = {DTO(i)-DTO(h)-d(8)}={39-33-6}=0

 ML (9) = {DTO(i)-DTO(h)-d(9)}={49-39-10}=0

2. MARGE TOTALE

La marge totale d’une activité i est donnée par la formule ci-


dessous :

MT(I) = {DTA(y)-DTO(x)-d(I)}

Identification :
 MT(I) : marge totale de la tâche (i) ;
 DTA(y) : date au plus tard de la tâche ciblée ;
 DTO(x) : date au plus tôt de la tâche ciblée.
 D(i) : la durée de la tâche désignée.

 MT (1) = {DTA(b)-DTO(a)-d(1)}={4-0-4}=0

 MT (2) = {DTA(c)-DTO(b)-d(2)}={7-4-3}=0

 MT (3) = {DTA(d)-DTO(c)-d(3)}={9-7-2}=0

 MT (4) = {DTA(e)-DTO(d)-d(4)}={13-9-4}=0

 MT (5) = {DTA(f)-DTO(e)-d(5)}={20-13-7}=0

 MT (6) = {DTA(g)-DTO(f)-d(6)}={26-20-6}=0

 MT (7) = {DTA(h)-DTO(g)-d(7)}={33-26-7}=0

 MT (8) = {DTA(i)-DTO(h)-d(8)}={39-33-6}=0

 MT (9) = {DTA(j)-DTO(i)-d(8)}={49-39-10}=0

3. CHEMIN CRITIQUE
39

Le chemin critique indique quelle sont les tâches


successivement observer au cours de la mise en œuvre du projet afin
de surveiller les éventuels retards. Le but est de détecté les
dérives et d’agir alors rapidement en conséquence afin de minimiser
leur impact sur la durée de l’ensemble de projet.

Notre chemin critique est :

(1), (2), (3), (4), (5), (6), (7), (8), (9)

4. COUT TOTAL DU PROJET

Il se calcul en faisant l’évaluation de tous les coûts des


différentes tâches (les coûts sont évalués en dollars américains).

Le coût total du projet est donné par la formule suivante :

C=ΣC i

Soit C = 50 + 200 + 15 + 110.5 + 100 + 200 + 80 + 69 +200= 1024.5 $

5. INTERVALE DE CONFIANCE DE LA DUREE OPTIMALE

5.1 Variance

La variance d’une activité est donnée par la formule


suivante :

( )
2
b−a
σ 2i =
6

σ 21= ( )
5−3 2 1
6
=
3
σ 25= ( )
9−6 2 1
6
=
2

σ 22= ( )
4−2 2 1
6
=
3
σ 26 = ( )
7−5 2 1
6
=
3

σ 23= ( )
3−1 2 1
6
=
3
σ 27= ( )
9−6 2 1
6
=
2

σ 24 = ( )
5−3 2 1
6
=
3
σ 28= ( )
7−5 2 1
6
=
2
40

σ 29 = ( 12−7 2 5
6
= )
6

5.2 L’écart type du projet

L’écart type du projet est donné par la formule suivante :

σ =√ Σσ 2i Avec i appartenant au chemin critique

Nous aurons

σ=
√ 1 1 1 1 1 1 1 1 5
+ + + + + + + + =√ 4=2
3 3 3 3 2 3 2 2 6

5.3 La durée moyenne du projet

La durée moyenne du projet est donnée par la formule


suivante :

X̄ =Σ X̄ i Avec i appartenant au chemin critique

Nous aurons

X̄ =4 +3+2+ 4+7+ 6+7+6+ 10=49


5.4 L’intervalle de confiance

L’intervalle de confiance I de la durée optimale d’un projet


est donné par la formule suivante :

I =[ X̄ −t 3 . σ , X̄+ t 3 . σ ]
Avec t3=3 et à 99,9% de chance, nous aurons

I= [49-3.2,49+3.2] = [49-6,49+6] = [43,55]

Donc la durée optimale du projet est comprise entre 43 et 55


jours à 99,9% de chance.

II.3. CONCLUSION
41

Dans ce chapitre nommé cadrage de projet, il a été question


de déterminer en détail les objectifs du projet, identifier les
grandes étapes du projet ainsi que les dates importantes et enfin
proposer les ressources et moyens nécessaires pour parvenir à sa
réalisation.

Nous avons coché pour la méthode PERT à estimation triple


vu sa précision elle nous a permis de cadre notre projet et nous
pouvons encore dire que notre projet n’a pas des retards donc il est
critique.

CHAPITRE III : ETUDES PREALABLE ET DETAILLEE

SECTION I : ETUDE PREALABLE

INTRODUCTION

Notre travail n’est pas basé sur la création d’un système


qui n’existe pas, mais plutôt une étude sur l’existant afin
d’améliorer l’efficacité de services.
Sur ce, nous allons faire une étude approfondie sur le
système existant afin d’en détecter des faiblesses et déterminer
notre part de chose ou domaine d’intervention, puis proposer notre
solution utile à ce service.

III.1. DESCRIPTION DE L’EXISTANT

Cette étude permet d’identifier les anomalies et les


insuffisances de l’existant au début d’une critique afin de proposer
des pistes des solutions adéquates et relatives à l’amélioration
de ce dernier.
Le bus CAN est utilisé dans de nombreux domaines :
automobile, agricole, industriel et médical. Ce bus de terrain est
connu pour être une solution de communication économique et
efficace. Chaque équipement connecté, ou « nœud », peut communiquer
avec tous les autres. Pour faciliter le diagnostic et contrôle sur
un réseau CAN, on utilise les adaptateurs suivants :

III.1.1. CAN série


42

Le bus CAN est né du besoin de trouver une solution de


communication série dans les véhicules automobiles, qui ont tendance
à intégrer de plus en plus de commandes électroniques. Jusqu'à
maintenant, tous les organes de commandes des véhicules échangeaient
les données par l'intermédiaire de lignes dédiées.

Ce CAN-BUS série permet au MCU de communiquer avec le CAN-


BUS, par exemple récolter les informations sur votre véhicule. Le
CAN-BUS est un bus industriel commun en raison de sa longue
distance, de sa vitesse de communication moyenne et de sa fiabilité
élevée. Ce module CAN-BUS série est basé sur les modules MCP2551 et
MCP2515. (les bus de communication bus can controller area network,
2020)

Figure III.1 Réseau CAN automobile

En pratique, il y a trois bus CAN différents dans une voiture, à


des débits différents :

 Un bus très rapide pour gérer la sécurité (freinage, ABS,


détection chocs, airbags...) ;
 Un bus à vitesse moyenne pour gérer le moteur (commandes
et capteurs) ;
 Un bus lent pour gérer tous les accessoires (lampes,
moteurs d’asservissements, boutons...). (Dominique Paret,
2009)

Il existe sous deux versions :

 CAN2.0A : trame standard identificateur de 11 bits (CAN


standard) ;
 CAN2.0B : trame plus longue avec identificateur sur 29 bits
(CAN étendu).

Il existe également deux types différenciés par leur débit :


Figure III. 2 Réseau CAN automobile

 Le CAN Low Speed(<125kb/sec);


 Le CAN High Speed (de 125kb/sec à 1 Mb/sec).
43

III.1.2. LV-CAN200

L'accès aux données CAN Bus permet aux opérateurs de flotte


de générer des rapports sur un large éventail d'informations.
L'adaptateur LV-CAN200 permet de lire des paramètres CAN essentiels
tels que : niveau de carburant, compteur kilométrique, numéro VIN,
consommation de carburant, régime moteur, température du moteur et
état du frein à main.

Il aide à identifier les domaines d'amélioration dans le


fonctionnement du véhicule pour réduire les frais généraux et
minimiser l'impact environnemental. (eltonika-lv-can200, 2021)

Figure III.3 LV-CAN200

III.2. CRITIQUE DE L’EXISTANT

L’étude de notre système existant nous amène à comprendre


son Fonctionnement et d’en tirer les défauts, afin de juger par ou
notre apport dans ce domaine se rendrait utile.
Comme on ne cesse de le dire, le but majeur de notre
rédaction Est d’optimiser le service rendu aux utilisateurs, c’est
ainsi qu’on a ressortis les insuffisances ou défaillances
suivantes :
Le bus CAN a existé avant tout pour trouver la solution de
communication série dans les véhicules automobiles. Ce qui fait que
la majorité des adaptateurs qui existent consistes avant tout de
faire une surveillance dans les automobiles avec une distance
réduite.

En outre, dans le réseau local, personnel ou domicile il est


devenu difficile de voir l’usage de certaines liaisons, comme par
exemple la communication série. Ainsi l’interface de ligne
consistera de relier le réseau CAN par une autre liaison nécessaire
pour le diagnostic et contrôle du réseau. Ce qui fera qu’il sera
44

difficile à les adapter dans des industries, pour parvenir à gérer


un réseau CAN industriel.

III.3. PROPOSITION DES SOLUTIONS

L’automatisation reste le domaine plus impactant dans la


libération de l’homme partiellement ou totalement à des activités
les plus complexes et plus pénibles et aussi optimiser le service
rendu manuel simple ou compliqué soit-il.

Suite à l’analyse et critique de l’existant que nous avons


fait, nous avions vu que le diagnostic est plus possible dans le
réseau automobile, ce qui ne facilite pas un contrôle total dans le
réseau industriel.

Nous nous sommes préoccupés sur les inconvénients, les difficultés


les plus frappants. Grâce à ces méfaits, notre solution serait de
réaliser un adaptateur avec liaison intermédiaire comme par exemple
Ethernet pour faciliter le diagnostic et le contrôle du réseau CAN
industriel.

III.4. CHOIX DE LA SOLUTION

Les solutions que nous avons proposées dans la partie


précédente, s’avèrent un peu lucides pour remédier aux différents
problèmes. Dans cette optique, nous avons optés pour la solution
suivante : un adaptateur CAN-USB, le réseau industriel aura pour
intermédiaire avec le réseau local la liaison CAN-USB qui pourra
faciliter l’accessibilité dans nos périphériques habituels
(Ordinateur, iPad). Ce qui facilitera l’administration du réseau CAN
industriel voir domicile, automobile et remédiera au problème de
distance rencontré avec les autres adaptateurs.

III.5. CONCLUSION
Dans cette partie nous avons eu à comprendre le fonctionnement
du bus CAN dont nous avions fait l’étude de l’existant, critiqué et
proposé des solutions afin de mieux le comprendre et de définir
notre plan d’intervention Pour aboutir à notre but, et dans la
partie suivante nous allons développer notre choix de solution afin
de concevoir un nouveau système.
45

SECTION II : ETUDE DETAILLEE

INTRODUCTION

Dans la partie précédente, nous avons eu à étudier le réseau


CAN afin mieux le comprendre et de définir notre plan
d’intervention. Pour aboutir à notre but, c’est dans ce chapitre que
nous allons développer notre choix de solution afin de concevoir
notre système.

III.6. ETUDE STRUCTURELLE

Dans ce point, nous allons étudier notre système à partir


de son schéma de principe. C’est ici que nous allons détailler le
principe de fonctionnement du système, c’est à dire toutes les
interactions entre ses différentes parties prises en comptes.

Nous définirons donc les différentes phases de traitement


nécessaire à l’interprétation des commandes des utilisateurs vers le
système :

III.6.1. Phase de définition fonctionnelle

L’étude d’un travail d’automatisation commence par son


schéma synoptique, représentant en bloc les grandes parties du
système automatisé. Ainsi nous allons faire une étude détaillée de
chacune des parties. (Sammy, Automatisation, 2020, p. 1)
a. Schéma Synoptique Du Système Réalisé

Energie

Traitement Pré actionneurs Actionneurs


Signalisation des
informations
46

Interface

Poste de contrôle partie commande Partie opérative


Figure III.4. Schéma synoptique du système automatisé

Le système ainsi décrit par son schéma synoptique, comporte


Trois grandes parties : Le poste de control, la partie commande et
la partie opérative. La connexion entre ces différentes est
bidirectionnelle. Le type de communication utilisée est le full-
duplexe, permettant un trafique d’information en temps réel.
III.6.2. Phase De Définition Conceptuelle

Dans cette partie, nous allons ressortir toutes les


caractéristiques utiles de chacune des parties du schéma synoptique
d’un système automatisé. Nous décrierons donc le principe physique
régissant le fonctionnement du système et déterminant interactions
entre différentes parties. Découpons cette étude en trois grandes
parties, qui sont :
a. Poste de control

Il incorpore des consignes et de des signalisations, puis


permet à l’opérateur de commander le système le système (marche,
arrêt…).
Il permet également de système de visualiser les différents
états du système à d’aide de voyants, de terminale de dialogue ou
d’interface homme machine(IHM).

L’Interface Homme Machine

Le domaine d'interactions Homme-machine, appelé IHM,


s’intéresse à la conception et au développement de systèmes
interactifs en prenant en compte ses impacts sociétaux et éthiques.
L'homme interagit avec les ordinateurs qui l'entourent, cette
interaction nécessite des médiatrices qui facilitent la
communication entre l'homme et la machine. (Sammy, Automatisation,
2020, p. 4)
47

La facilitation de l'utilisation de dispositifs devient de


plus en plus importante avec le nombre croissant d'interfaces
numériques dans la vie quotidienne. L'IHM a pour but de trouver les
moyens le plus efficaces, les plus accessibles et les plus intuitifs
pour les utilisateurs afin de compléter une tache le plus rapidement
et le plus précisément possible. L'IHM est pluridisciplinaire,

elle bénéficie des sciences cognitives, linguistiques et de


psychologie aussi bien que de la vision par ordinateur et que de
l'électronique. (interaction_homme-machine, 2010)
b. Partie commande

C’est ici que se loge le cœur ou cerveau de notre système


intelligent. Elle donne les ordres de fonctionnement à la partie
opérative.
Les pré-actionneurs permettent de commander les
actionneurs ; ils assurent le transfert d’énergie entre la source
d’énergie (réseau électrique, pneumatique) et les actionneurs.
Exemples : relais, électrovanne, distributeur…
Ces prés actionneurs sont commandés à leur tour par le bloc
traitement des informations. Celui-ci reçoit les consignes de l’IHM
ou du pupitre de commande et Les informations de la partie opérative
transmises par les capteurs/détecteurs. En fonction de ces consignes
et de son programme de gestion des taches (implanté dans un automate
programmable ou un ordinateur), elle va commander le pré-actionneur
et renvoyer des informations à l’IHM ou à d’autres systèmes de
commande et/ou de supervision en utilisant un réseau et un protocole
de communication.

Pré-actionneurs

Les pré-actionneurs sont des interfaces entre le traitement


des informations et la partie opérative.

Ils doivent remplir des critères et caractéristiques


physiques suivants :

•Ils doivent apporter une isolation galvanique entre le


traitement des informations et la partie opérative.
48

•Ils doivent être dotés d’une plus grande précision afin de


pouvoir transférer en temps réel tous les ordres à la partie
opérative en provenance du traitement des données.

c. La partie opérative
Elle agit sur la matière d’œuvre afin de donner sa valeur
ajoutée. Les actionneurs (moteurs, vérins) agissent sur la partie
mécanique du système qui agit sur la manière d’œuvre. (Sammy,
Automatisation, 2020, p. 3)
Les capteurs/détecteurs permettent d’acquérir les divers
états du système.
Actionneurs

Ils reçoivent une tension de 220V et engendre une action


physique agissant sur les effecteurs, interprétant les instructions
du traitement des informations.
Capteurs

• Les capteurs doivent être en mesure de reproduire l’état Réel


du système ;
• Ils doivent disposer d’une grande sensibilité ;
• Ils doivent isoler parfaitement le circuit de commande et le
circuit de puissance à contrôler ;
• La grandeur à mesurer doit être la position de l’effecteur ou
la présence du courant dans un circuit électrique.

L’Effecteur

• Il engendre l’action physique ayant l’impact direct sur le


Système physique de distribution électrique.

• Il doit être calibré de façon à respecter ou corriger le


fonctionnement de l’ancien système manuel.

III.5.3. Phase de définition physico-morphologique

C’est une phase qui permet de préciser quels éléments


physiques et Organiques requises pour réaliser les principes
physiques retenus. Pour la réalisation de la fonction choisie, nous
avons utilisé les éléments physiques suivants et dont ils seront
expliqués dans la phase suivante :
• Microcontrôleur ;
• Contrôleur CAN ;
• Ordinateur ;
49

• Câble USB ;

a. Schéma de principe

Figure III.5. Schéma synoptique du système automatisé

a. Détail sur les matériels

Ainsi, pour la réalisation des fonctions nous avons utilisé


un certain nombre des éléments physiques « composants » ci-après :
a.1. Le Bus CAN

Le bus de données CAN (Controller Area Network) est


un bus système série très répandu dans beaucoup d'industries,
notamment l'automobile. (Sammy, Systèmes embarqués, 2022)

Il a été normalisé avec la norme ISO 11898.

Il met en application une approche connue sous le nom


de multiplexage, et qui consiste à raccorder à un même câble
(un bus) un grand nombre de calculateurs qui communiqueront donc à
tour de rôle.
50

Cette technique élimine le besoin de câbler des lignes


dédiées pour chaque information à faire transiter (connexion point-
à-point). Dès qu'un système (voiture, avion, bateau, réseau
téléphonique, etc.) atteint un certain niveau de complexité,
l'approche point-à-point devient impossible du fait de l'immense
quantité de câblage à installer et de son coût (en masse, matériaux,
main d'œuvre, maintenance).

L'introduction des bus multiplexés (principalement le CAN)


dans l'automobile avait pour objectif de réduire la quantité de
câbles dans les véhicules (il y avait alors jusqu'à 2 km de câbles
par voiture), mais elle a surtout permis l'explosion du nombre de
calculateurs et capteurs distribués dans tout le véhicule, et des
prestations correspondantes (baisse de
consommation, dépollution, sécurité active/passive, confort,
détection des pannes, etc.), tout en diminuant les longueurs
câblées.

Figure III.6 Bus CAN

1. Fonctionnement

Le procédé d'attribution du bus est basé sur le principe de


"l'arbitrage bit à bit", selon lequel les nœuds en compétition,
émettant simultanément sur le bus, comparent bit à bit
l'identificateur de leur message avec celui des messages
concurrents. Les stations de priorité moins élevée perdront la
compétition face à celle qui a la priorité la plus élevée.

Les stations sont câblées sur le bus par le principe du "ET


câblé". En cas de conflit c'est à dire émission simultanée, la
valeur 0 écrase la valeur 1.
Dans l'exemple ci-dessus, trois stations émettent simultanément :
 La station 1 perd la compétition puis la station 3 ;
 Seule la station 2 pourra transmettre.
51

On appelle donc "état dominant" l'état logique 0, et "état


récessif" l'état logique 1. Lors de l'arbitrage bit à bit, dès
qu'une station émettrice se trouve en état récessif et détecte un
état dominant, elle perd la compétition et arrête d'émettre. Tous
les perdants deviennent automatiquement des récepteurs du message,
et ne tentent à nouveau d'émettre que lorsque le bus se libère.

2. Couche physique
 Signaux

Il a les mêmes signaux que le réseau RS485, la seule


différence est que ce dernier peut fonctionner en full duplex. Il
utilise les 4 signaux ci-dessous :
CANH : transmission ou réception différentielle des données
CANL : transmission ou réception différentielle des données

 Support de transmission

Le support de transmission est du type différentiel. Deux


fils correspondant à des niveaux complémentaires sont donc utiles
pour chaque signal ce qui limite l'influence des bruits extérieurs
et des masses. En bref c’est un câble torsadé d’une longueur
maximale de 5000m.

 Topologie

A l’origine la topologie utilisée était de type BUS

 Codage

Le codage utilisé ici est du type NRZ. Et les niveaux


de tension sont :
- CANH - CANL = 2 volt : 0(avec CANH= 3 ,5v et CANL=1,5v)
- CANH - CANL = 0 volt : 1(avec CANH= 2 ,5v et CANL=2,5v)
En tenant compte de la tolérance on peut écrire simplement
0V < CANH – CANL < 0, 5V: 1
0,9V < CANH – CANL < 2V: 0

 Interface de ligne

Il utilise le circuit intégré MCP2551(TJA1050)


52

Figure III.7 Interface de ligne

La durée d'un bit est appelée « Nominal Bit Time » Nominal bit
time(Tbit).

Chaque bit est constitué de plusieurs segments cadencés par


l'horloge interne de chaque nœud :

 Segment de synchronisation (SYNC_SEG),


 Segment de propagation(PROG_SEG),
 Segment de phase buffer n° 1, (PHASE_SEG1),
 Segment de phase buffer n° 2. (PHASE_SEG2).

La durée de chaque segment se calcul à partir d’une unité de


temps construite à partir de la période de l'oscillateur interne de
chaque nœud appelée Time Quanta(TQ) et dérive de la période de
l’oscillateur interne. Il est programmable par le prediviseur BRP
(Baud Rate Prescaler) dont la valeur varie entre 1 et 64 et se
calculant par la formule suivante :

T Q∗FOSC
BRP=
2

Et la durée du bit peut se calculer par la formule suivante :

T BIT =T Q∗(SYN C SEG + PRO PSEG + PHAS E SEG 1+ PHAS E SEG 2)

Il faut noter l’inverse TBIT n’est rien d’autre que le débit


de notre bus can et est appelé NBR (nominal bit rate).

Segment de synchronisation(SYNC_SEG)

Le segment de synchronisation est utilisé pour synchroniser


les différents nœuds.
53

La transition de 0 à 1 ou de 1 à 0, effectuée pour le nœud


émetteur, doit s'effectuer dans ce segment. Si pour un nœud
récepteur cette transition n'a pas lieu dans ce même segment, c'est
qu'il est désynchronisé. Il s'agit d'une erreur de phase.

Grâce au bit de transparence, cette vérification peut être


faite au moins tous les 5 bits (pour les premiers champs de la trame
dans lequel il est utilisé). Sa durée est de 1 T Q

Segment de propagation(PROG_SEG)

Le segment de propagation est utilisé pour compenser les


phénomènes de propagation sur le bus. Sa durée varie entre 1 et 8
TQ

Segment de phase buffer n°1(PHASE_SEG1)

La fin de ce segment indique le point d’acquisition à


l’intérieur du bit time, Sa durée varie entre 1 et 8 T Q

La durée de ces segments peut varier en cas de


resynchronisation.

Segment de phase buffer n°2(PHASE_SEG2)

Ce segment met en place un délai avant la transition


suivante. Sa durée varie entre 2 et 8 T Q

La durée de ces segments peut varier en cas de


resynchronisation.

Synchronisation jump with(SJW)

C’est la taille maximale du décalage utilisée dans la


resynchronisation (séquence qui permet de rattraper une dérive) qui
se traduit par un allongement du segment de phase n°1 ou un
raccourcissement du segment de phase n°2 afin de déplacer le point
d’échantillonnage. Sa durée varie entre 1 et 4 T Q.
3. Couche liaison

 Méthode d’accès

La méthode d’accès utilisée ici est de type CSMA/CR


54

 Trame

Il existe également 2 standards pour la couche de liaison de


données :

 ISO 11898 part A → CAN 2.0A « standard frame format »


(identification sur 11 bits),
 ISO 11898 part B → CAN 2.0B « extended frame format »
(identification sur 29 bits).

Il existe plusieurs types de trame :

 Trame de données,
 Trame de requête,
 Trame d'erreur,
 Trame de surcharge.

Entre 2 trames, les émetteurs doivent respecter une pause (période


d’inter-trame) équivalente à la durée de 3 bits pendant laquelle le
bus est maintenu à l'état récessif.

Dans ce cours nous allons nous contenter de la trame de données et


de la trame de requête.

Trame de données

La trame de données sert à envoyer des informations aux autres


nœuds. Elle est composée de 7 champs et se présente de la manière
ci- dessous :

SOF ARBITRATION CONTROLE DATA CRC ACK EOF

1BIT 12 OU 32 BITS 6 BITS DE 0 à 64 BITS 16 BITS 2 BITS 7 BITS

Tableau III.1. Trame de données

Avec :
SOF : Le début de trame SOF (Start Of Frame), 1 bit dominant ; la
ligne étant précédemment au repos. (Dominique Paret, 1999)
ARBITRATION :

 Composée de 12 bits pour CAN2.0A (zone d'identification de la


trame (11 bits + RTR) :
o Les 11 premiers indiquent l’identité du contenu du message,
et servent également à l’arbitrage (gestion des priorités)
o Bit RTR (Remote Transmission Request) : détermine s'il
s'agit d'une trame de données (ex : régime moteur) ou d'une
55

d’une trame de demande de message (ex : demande de T° eau).


Le bit à 0 (dominant) pour une trame de données et le bit à
1 (récessif) pour une trame de demande.

 Composée de 32 bits pour CAN2.0B (zone d'identification de la


trame (11 bits + STR+IDE+18 bits+RTR) :
o Les 11 bits du poids fort et les 18 bits du poids faible
indiquent l’identité du contenu du message, et servent
également à l’arbitrage (gestion des priorités)
o SRR (Substitute Remote Request).
o IDE (Identifier Extension bit) qui établit la distinction
entre format standard (état dominant) et format étendu (état
récessif).
o RTR (Remote Transmission Request) détermine s'il s'agit
d'une trame de données ou d'une d'une trame de demande de
message.

CONTROLE : Champ de commande constitué de 6 bits :

 Les 2 premiers serviront pour une éventuelle évolution du


protocole (bits de réserve) ;
 Les 4 derniers permettent de coder le nombre d’octets du
champ de données

DATA : Ce champ contient de 0 à 8 octets de données (64 bits maxi)


CRC : Zone CRC (Cyclic Redundancy Code) de 15 bits : Ces bits sont
recalculés à la réception et comparés aux bits reçus. S'il y a une
différence, une erreur CRC est déclarée. Le polynôme CRC est :
x15 + x 14
+x 10
+ x8 + x7 + x4 + x3 + x0
ACK : Zone d'acquittement (ACKnowledge) composé d'un bit à l'état
récessif ainsi qu'un bit séparateur ACK. Le premier bit doit être
forcé à l'état dominant par les stations ayant bien reçu cette
trame.
EOF : Zone de fin de trame EOF (End Of Frame), 7 bits récessifs (à
l’état 1).

Trame de requête

La trame de requête sert à demander une donnée à un autre


nœud. Elle est similaire à la trame de données hormis :

 Le champ de données est vide,


 Le bit RTR du champ d'arbitrage est récessif,
 Les 4 bits DLC du champ de commande correspondent au nombre
d'octets attendus dans la réponse.
56

À noter que le fait que le bit RTR soit récessif dans le


cas d'une trame de requête fait que si une trame de données est
émise simultanément avec le même champ d'arbitrage, c'est la trame
de données qui est prioritaire.

Adressage

Les abonnés du bus sont identifiés par des adresses


attribuées par l’utilisateur qui ne sont que les identificateurs (18
bits pour 2.0A et 29 bits pour 2.0B).
Deux abonnés ne peuvent avoir la même adresse sinon collision.
Afin de sécuriser la transmission des messages, la
méthode du « bit-stuffing » est utilisée.

Elle consiste, dans le cas où l’on a émis 5 bits de même


polarité d'affilée, d'ajouter à la suite un bit de polarité
contraire, pour casser des chaînes trop importantes de bits
identiques. Cette méthode n'est appliquée que sur les champs SOF,
d'arbitrage, de commande, de data et de CRC (délimiteur exclu).
(Sammy, Systèmes embarqués, 2022)

Par exemple, « 1111 1110 » deviendra « 1111 1011 0 ».

Contrôleur

Le liaison CAN utilise comme contrôleur le circuit


intégré MCP2515

Figure III.8 Contrôleur


57

Et la connexion entre l’interface de ligne et le contrôleur sera :

Figure III.9 Connexion interface de ligne

Il faut juste noter qu’à la place de MCP2551, on peut aussi utiliser


le TJA1050.

4. Liaison en mikropascal

 Bibliothèques de la liaison CAN

MikroPascal fournit un ensemble de routines et bibliothèques pour la


liaison CAN. Les adresses sont assimilées aux identificateurs.

 Routine de la bibliothèque CAN


58

CANInitialize(a , b, c, d, e, f)

C’est une procédure qui permet d’initialiser le module


CAN en spécifiant le SJW a, le BRP b, le PHASE_SEG1 c, le PHASE_SEG2
d, le PROP_SEG e et le drapeau de configuration f.
Les constantes utilisées comme drapeau de configuration :

 _CAN_CONFIG_PHSEG2_PRG_ON et _CAN_CONFIG_PHSEG2_PRG_OFF : elles


sont utilisées pour spécifier l’utilisation ou non du segment de
phase buffer n°2
 _CAN_CONFIG_LINE_FILTER_ON et _CAN_CONFIG_LINE_FILTER_OFF : elles
sont utilisées pour spécifier si les filtres sont utilisés pour
réveiller le microcontrôleur
 _CAN_CONFIG_SAMPLE_ONCE et _CAN_CONFIG_SAMPLE_THRICE : elles
spécifient si la tentative de lecture doit se faire une seule
fois ou trois fois (tout en accordant la priorité au point
d’échantillonnage)
 _CAN_CONFIG_STD_MSG et _CAN_CONFIG_XTD_MSG : elles spécifient si
les messages à filtrer sont des types standard ou étendu.
 _CAN_CONFIG_DBL_BUFFER_ON et _CAN_CONFIG_DBL_BUFFER_OFF : elles
spécifient si un débordement du buffer0 sera transmis au buffer1
 _CAN_CONFIG_ALL_MSG,_CONFIG_VALID_XTD_MSG,
_CAN_CONFIG_VALID_STD_MSG et _CAN_CONFIG_ALL_VALID_MSG : elles
spécifient respectivement les réceptions de tous les messages
valides ou non (les filtres sont ignorés, les messages valides
avec un identifiant standard, les messages valides avec un
identifiant étendu et tous les messages valides.

CANSetOperationmode (a,b: byte)

C’est une procédure qui permet de définir le mode opératoire a


et la durée d’attente b.
NB :

 b =0:appel non bloquant


 b =255: appel bloquant

Les constantes utilisées comme mode opératoire :

 _CAN_MODE_NORMAL : elle représente le fonctionnement


normal du bus CAN
 _CAN_ MODE_SLEEP : elle représente un mode opératoire
dans lequel le bus CAN ne peut ni envoyer ni recevoir des
trames
59

 _CAN_MODE_LOOP : elle représente le mode de bouclage


c.à.d. simuler un réseau à partir d’un seul Nœud (dans le
cas de test)
 _CAN_MODE_LISTEN : elle représente un mode opératoire
dans lequel le bus peut recevoir toutes les trames même
erronées
 _CAN_MODE_CONFIG : elle représente le mode de
configuration des paramètres du bus CAN

CANGetOperationmode: byte
C’est une fonction qui renvoie le mode opératoire utilisé
par le bus CAN.

CANSetBaudRate(a,b,c,d,e,f)

C’est une procédure qui permet de modifier le débit du bus


CAN tout en spécifiant le SJW a, le BRP, le PHASE_SEG1 c, le
PHASE_SEG2 d, le PROP_SEG e et le drapeau de configuration f. Elle
doit être appelée en mode configuration.
CANSetMask (a,b,c)

C’est une procédure qui permet de définir le masque à


appliquer aux messages reçus tout en spécifiant le masque a, les
bits à tester b et le drapeau de configuration c.
NB : si on veut appliquer le masque à tous les bits, b doit
avoir comme valeur -1.
Les constantes utilisées comme masque :

 _CAN_ MASK_B1 : elle représente le masque associé au


buffer B0
 _CAN_ MASK_B2 : elle représente le masque associé au
buffer B1

CANSetFilter (a,b ,c)

C’est une procédure qui permet de définir le filtre à appliquer


aux messages reçus tout en spécifiant le filtre a, l’identificateur
à recevoir b et le drapeau de configuration c.
Les constantes utilisées comme filtre :

 _CAN_FILTER_B1_F1 : elle représente le premier filtre


associé au buffer B0
60

 _CAN_ FILTER_B1_F2 : elle représente le deuxième filtre


associé au buffer B0
 _CAN_FILTER_B2_F1 : elle représente le premier filtre
associé au buffer B1
 _CAN_FILTER_B2_F2 : elle représente le deuxième filtre
associé au buffer B1
 _CAN_FILTER_B2_F3 : elle représente le troisième filtre
associé au buffer B1
 _CAN_FILTER_B2_F4 : elle représente le quatrième filtre
associé au buffer B1

CANRead(a,b,c,d):byte

C'est une fonction qui lit une chaine reçue à partir de


la mémoire tampon du contrôleur CAN ou du microcontrôleur tout en
affectant :

 L’identificateur à la variable a
 La chaine lue à la variable b
 La longueur de la chaine lue à la variable c
 Le drapeau de réception à la variable d

La fonction renvoie 0 si aucune trame n’a été reçu


CANWrite(a,b,c,d,):byte

C’est une fonction qui envoie une chaine à partir de la


mémoire tampon d’émission du contrôleur CAN ou du microcontrôleur
tout en spécifiant :

 L’identificateur a
 La chaine à envoyer b
 La longueur de la chaine à envoyer c
 Le drapeau d’émission d

La fonction renvoie 0 si aucune trame n’a été envoyée


Les constantes utilisées comme drapeau d’émission :

 _CAN_TX_PRIORITYx : elle représente la priorité de la


mémoire tampon d’émission et x peut prendre de la valeur
allant de 0 à 3 désignant respectivement des priorités
très faible, faible, élevée et très élevée
 _CAN_TX_STD_FRAME ou _CAN_ TX_XTD_FRAME : elles sont
utilisées pour spécifier si les trames utilisées sont
standards ou étendues
 _CAN_TX_RTR_NO_FRAME ou _CAN_TX_RTR_FRAME : elles sont
utilisées pour spécifier si on utilise les trames de
données ou les trames de requetés.
61

a.2 Microcontrôleur

Les microcontrôleurs PIC (ou PICmicro dans la terminologie


du fabricant) forment une famille de microcontrôleurs de la société
Microchip. Ces microcontrôleurs sont dérivés du PIC1650 développé à
l'origine par la division microélectronique de General Instrument.

Le nom PIC n'est pas officiellement un acronyme, bien que la


traduction en « Peripheral Interface Controller » (« contrôleur
d'interface périphérique ») soit généralement admise. Cependant, à
l'époque du développement du PIC1650 par General Instrument, PIC
était un acronyme de « Programmable Intelligent Computer » ou
« Programmable Integrated Circuit ». (Microcontroleur Pic, 2010)

a.2.1 Programmation du pic

Les PIC disposent de plusieurs technologies de mémoire de


programme : flash, ROM, EPROM, EEPROM, UVPROM. Certains PIC
(PIC18/24/32 et dsPIC33) permettent l'accès à la FLASH et à la RAM
externe.

La programmation du PIC peut se faire de différentes façons :

 Par programmation in-situ en utilisant l'interface de


programmation / debug universel ICSP de Microchip. Il suffit
alors d'ajouter simplement un connecteur ICSP au
microcontrôleur sur la carte fille pour permettre sa
programmation une fois soudé ou sur son support (sans avoir
besoin de le retirer). Il existe pour cela plusieurs solutions
libres (logiciel + interface à faire soi-même) ou commerciales
(par exemple : PICkit 3, ICD4 et Real-Ice de Microchip);

 Par l'intermédiaire d'un programmateur dédié (par exemple :


PM3, pour la production (Microchip).

a.2.2 Famille du PIC

Les modèles de PIC courants sont repérés par une référence de la


forme :

 2 chiffres : famille du PIC (10, 12, 16, 18, 24 ,32) ou dsPIC


(30, 33) — 2 familles très rares ont été également introduites
PIC14 / PIC17 ;
 1 lettre : type de mémoire de programme (C ou F). Le F indique
en général qu'il s'agit d'une mémoire flash et donc effaçable
électriquement. La lettre C indique en général que la mémoire
62

ne peut être effacée que par exposition aux ultra-violets


(exception pour le PIC16C84 qui utilise une mémoire EEPROM donc
effaçable électriquement). Un L peut être ajouté devant pour
indiquer qu'il s'agit d'un modèle basse tension (exemple : 2 V
à 5,5 V si LF — 4,2 V à 5,5 V si F) ;
 Un nombre de 2 à 4 chiffres : modèle du PIC au sein de la
famille. Toutefois il y a maintenant des exceptions :
PIC18F25K20 ou PIC18F96J60 par exemple ;
 Un groupe de lettres pour indiquer le boîtier et la gamme de
température.

Par exemple, le PIC18LF4682-I/P est un microcontrôleur de la famille


PIC18, basse tension (L), à mémoire flash (F), modèle 4682, gamme de
température industrielle (I) et boîtier DIL40. (Rémy, 2014)

PIC18F4550

Cette famille a un jeu d'instruction plus complet puisqu'il


comprend quelque 75 instructions. Cette palette d'instructions
étendue lui permet de faire fonctionner du code C compilé de manière
nettement plus efficace que les familles précédentes.
(Microcontroleur Pic, 2010)

Sur les dernières versions (sous-famille « K »), on peut les


utiliser avec un quartz fonctionnant jusqu'à 64 MHz (16 MIPS).

Cette famille propose une multitude de dérivés intégrant


l'USB, ETHERNET (MAC+PHY), le CAN, le CAN FD, le contrôleur LCD des
canaux de MLI dédiés au contrôle moteur.

1. BROCHAGE

Figure III.10. Brochage du PIC18F4550


63

2. REGISTRES
Registre ADCON1

C’est un registre qui permet de configurer les broches en


analogique ou en numérique. Pour configurer toutes les broches en
numérique, il suffit d’allumer les quatre premiers bits (b0, b1, b2,
b3) de ce registre qui se nomment respectivement PCFG0 et PCFG1,
PCFG2 et PCFG3.
NB : Pour mettre les n premières lignes (Ani) en
analogique, il suffit de calculer la valeur de ce registre de la
manière suivante :
Valeur= 15-X
Registre CMCON
C’est le registre qui gère les deux comparateurs de tension
du PIC18F4550. Pour désactiver les deux comparateurs, il suffit
d’allumer les trois premiers Bits (b0, b1, b2) de ce registre qui se
nomment respectivement CM0, CM1 et CM2.
Registre LATX
Ce sont des registres qui sont utilisés pour l’écriture sur
les ports d’entrée/ sortie, le PIC18F4550 en compte 5 soient : LATA,
LATB, LATD, LATE. (Sammy, Systèmes embarqués, 2022)
a.2 L’alimentation

L’alimentation fournie l’énergie nécessaire pour faire


fonctionner tout le montage. Est un circuit intégré qui reçoivent à
l’entrée un courant alternatif de 220V efficace pour sortir un
courant continu stabilisé de 5V, 12V,24V… (Sammy, Electronique
Générale, 2018)
a.3 Ordinateur
Un ordinateur est un système de traitement de l'information
programmable tel que défini par Turing et qui fonctionne par la
lecture séquentielle d'un ensemble d'instructions, organisées en
programmes, qui lui font exécuter des opérations logiques et
arithmétiques. Sa structure physique actuelle fait que toutes les
opérations reposent sur la logique binaire et sur des nombres formés
à partir de chiffres binaires.

Dès sa mise sous tension, un ordinateur exécute, l'une après


l'autre, des instructions qui lui font lire, manipuler, puis
réécrire un ensemble de données déterminées par une mémoire morte
d'amorçage. Des tests et des sauts conditionnels permettent de
passer à l'instruction suivante et donc d'agir différemment en
64

fonction des données ou des nécessités du moment ou de


l'environnement.

Les données à manipuler sont obtenues, soit par la lecture


de mémoires, Soit par la lecture d'information en provenance de
périphériques internes ou externes (déplacement d'une souris, touche
appuyée sur un clavier, température, vitesse, compression…). Une
fois utilisés, ou manipulés, les résultats sont écrits, soit dans
des mémoires, soit dans des composants qui peuvent transformer une
valeur binaire en une action physique (écriture sur une imprimante
ou sur un moniteur, accélération ou freinage d'un véhicule,
changement de température d'un four…). L'ordinateur peut aussi
répondre à des interruptions qui lui permettent d’exécuter des
programmes de réponses spécifiques à chacune, puis de reprendre
l’exécution séquentielle du programme interrompu.

Actuellement, les ordinateurs sont électroniques. Processeur


et Mémoire sont composés de transistors, dont chacun se présente
sous deux états, à l'instar d'une (on parle de « portes logiques »)
qui peut être ouverte ou fermée : l'information (opérations et
données) est codée sous forme de nombres binaires, qui ne
comportent que des 0 et des 1. (ordinateur, 2009)

Le processeur d'aujourd'hui, vrai petit ordinateur, comporte


aussi une bonne quantité de mémoire et il a le plus souvent
plusieurs « cœurs », c'est-à-dire des unités de calcul.

La mémoire est en plusieurs parties :

La mémoire vive ou RAM (Random Access Memory) servant aux


programmes et aux données ;

La mémoire morte, ou ROM (Read Only Memory), servant au


démarrage ; La mémoire de masse (disque dur, clé USB, carte mémoire
externe...).

Des périphériques complètent l’ordinateur :

Clavier, souris, surface tactile, scanner, carte graphique,


écran, imprimante, etc.

Figure III.11. Ordinateur


65

a.4 USB

L’USB « Universal Serial Bus » est une norme de bus


informatique en série qui sert à connecter des périphériques
informatiques à un ordinateur ou à tout type d'appareil prévu à cet
effet (tablette, smartphone, etc.). Le bus USB permet de connecter
des périphériques « à chaud » (quand l'ordinateur est en marche) et
reconnaît automatiquement le périphérique. Il peut alimenter les
périphériques peu gourmands en énergie (clé USB, disques SSD) et,
pour ses dernières versions à prise USB Type-C, des appareils
réclamant plus de puissance (60 W en version standard, 100 W au
maximum). (USB, 2014)

Figure III.12. USB

III.6.4. Phase De Définition Détaillée

Il s’agit d’un circuit détaillé faisant intervenir tous les


composants entrant en comptes dans le fonctionnement du nouveau
système.
66

III.6.4.1 Schéma du circuit

Figure III.13. Schéma du circuit

III.6.4.2 Détails sur les composants utilisés

a. Résistance

La résistance est la caractéristique d'un composant à


s'opposer au passage du courant (flux d'électrons) et s’accompagne
d’une dissipation d’énergie dans le composant par effet joule. Cette
dissipation est à prendre en compte dans le choix du composant.
L'unité de la résistance est l'Ohm dont le symbole est la lettre
Oméga (Ω).
La résistance est un composant passif non polarisé
(indépendant du sens du courant qui la traverse, ce qui n'est pas le
cas des diodes et de certains condensateurs).
a. 1. Représentation symbolique de la résistance

Figure III.14. Représentation du la résistance


67

a.2. Image de résistance

Figure III.15. Images de résistances

b. Le condensateur

Le condensateur est un composant électronique qui permet


d’emmagasiner de l’énergie électrique.
Un condensateur possède une capacitance C, et son unité est
le Farad [F]. La plupart des condensateurs sont constitués de deux
plaques métalliques séparées par un matériau non-conducteur qu’on
appelle un diélectrique.
Des condensateurs pratiques pour des circuits sont
typiquement de l’ordre du picofarad (pF) au microfarad (µF).
Cependant, dans certaines voitures électriques, on utilise des
condensateurs de l’ordre du kilo farad (kF) pour emmagasiner
l’énergie ou fournir un énorme pulse d’énergie lors du décollage.
(Condensateur, 2012)

b.1 Représentation symbolique de condensateur

Figure III.16. Représentation symbolique du condensateur

b.2 Image de condensateur

Figure III.17. Images de condensateur électrolytique polarisé


68

C. Quartz
Un quartz est un composant électronique qui possède comme
propriété utile d'osciller à une fréquence stable lorsqu'il est
stimulé électriquement. Les propriétés piézoélectriques remarquables
du minéral de quartz permettent d'obtenir des fréquences
d'oscillation très précises. (Quartz_electronique, 2018)

Figure III.18. Quartz

III.7. PROGRAMMATION

Ensemble des activités permettant l’écriture d’un programme


Informatique. Souvent appelé codage et pour écrire un programme on
utilise un langage de programmation.
Un programme : est une suite d’instruction permettant l’exécution
d’une suite d’instruction.

III.7.1. Langage de programmation informatique

On entend par « langage informatique » un langage destiné à


décrire L’ensemble des actions consécutives qu’un ordinateur doit
exécuter, ce langage permet la communication entre l’homme et
ordinateur.
Il existe plusieurs langages de programmations :
• Pascal ;
• V.B ;
• Win Dev ;
• Python
• Arduino
• Mikropascal ;
• etc.

Tout langage de programmation est capable d’effectuer les


tâches que les autres langages peuvent exécuter.
69

À propos, dans l’élaboration de notre travail, nous avons


choisis d’utiliser comme langage de programmation Pascal Objet pour
sa simplicité dans le pilotage.

a. MIKROPASCAL

Le « Mikropascal » est un compilateur pour PIC Conçu par la


société « Mikroelektronika », le compilateur PASCAL nouvelle
génération "Mikropascal" pour microcontrôleurs PIC bénéficie d'une
prise en main très intuitive et d'une ergonomie sans faille. (Rémy,
2014)
Ces très nombreux outils intégrés (mode simulateur,
terminal de communication, gestionnaire 7 segments, analyseur
statistique, correcteur d'erreur, explorateur de code...) associé à
sa capacité à pouvoir gérer la plupart des périphériques rencontrés
dans l'industrie (Bus I2C, 1Wire, SPI, RS485, Bus CAN, cartes
compact Flash, signaux PWM, afficheurs LCD et 7 segments...) on font
un outils de développement incontournable et puissant ; riche de
dispositif pour des microcontrôleurs de la famille PIC.
Il est conçu pour fournir les solutions les plus faciles que
possibles pour des applications se développant pour les systèmes à
microcontrôleur. Il contient un large ensemble de bibliothèques de
matériel, de composant et la documentation complète.
(microcontroleur, 2016)
a.1. Description du logiciel

Le compilateur Mikropascal nous permet de développer


rapidement des applications complexes :
 Écrivez votre code source de Pascal en utilisant le
rédacteur intégré de code (les aides de code et de
paramètre, Accentuer de syntaxe, correction automatique,
etc.…)
 Employez les bibliothèques Mikropascal incluses pour
accélérer nettement le développement : acquisition de
données, mémoire, affichages, conversions.

 Surveillez votre structure de programme, variables, et


fonctions dans l'explorateur de code.

 Inspectez l'écoulement de programme et corrigez la


logique exécutable avec le programme de mise au point
intégré.
b. DELPHI
70

Delphi est à la fois un langage de programmation orienté


objet et un environnement de développement intégré (EDI) pour ce
langage. L'EDI Delphi est un EDI propriétaire fonctionnant sous
Windows créé en 1995 par Borland.

À l'époque, créer des programmes graphiques sous Windows se


faisait en grande majorité en utilisant soit la chaîne de
compilation Visual C++, soit le RAD Visual Basic. Le premier outil
étant excessivement complexe et le second assez peu structuré,
Delphi apparut alors comme une alternative viable pour beaucoup de
développeurs qui souhaitaient créer des programmes pour Windows.

En Delphi, les instructions ne peuvent pas être rassemblées


dans un Seul et même listing. Elles sont, au contraire, attachées
aux objets qui qui composent une application. Lorsqu’un objet est
sollicité par un clic de souris ou ne frappe au clavier, Delphi
recherche la portion de code correspondante.

Si elle existe, elle est exécutée ; dans le cas contraire,


aucune Action n’en découle. Une application écrite en Delphi est
donc constituée d’un ensemble de petits programmes indépendants
(procédures et fonctions), qui sont activés lorsque certains
événements propres aux objets utilisé se présentent.

Bien que le Pascal Objet introduise une multitude de


concepts
intéressants et novateurs (de nombreux ont été repris avec
C#), il souffre de faiblesses connues. Par exemple, il ne permet pas
certaines fonctionnalités de POO telles que l'héritage multiple de
classes. Certaines fonctionnalités comme la surcharge d'opérateurs
et la généricité n'ont été introduits que tard (respectivement avec
Delphi 2005 et Delphi 2009).

De plus, sa parenté avec le Pascal rebute de nombreux


programmeurs plus habitués à des styles de programmation proches de
Java ou C. Enfin, il n'est ni standardisé ni géré par un comité
indépendant : propriété d'Embarcadero, l'éditeur est le seul à
pouvoir décider de l'avenir et de l'ajout de nouvelles
fonctionnalités au langage. (Michel, 2002, p. 8)

a.1. Simulation de mikropascal avec ISIS

Proteus est une suite logicielle de CAO électronique éditée


par la société Labcenter Electronics. ISIS est la composante de
Proteus qui permet la création de schémas et la simulation
électrique.
71

La grande force de ISIS est de pouvoir simuler le


comportement d'un microcontrôleur (PIC, Atmel, 8051, ARM, HC11...)
et de son interaction avec les composants qui l'entourent. Proteus
est un logiciel propriétaire payant.

Une version de démonstration gratuite et limitée est disponible.

Exemple d’une simulation avec un PIC

Figure III.18. Exemple d’une simulation avec un PIC

III.8. Étude fonctionnelle

Le hardware seul sans software n’est qu’un corps sans


esprit. Ainsi, procédons à l’étude détaillée de l’application.
C’est ici que l’on aura à implémenter toutes les règles et
procédées de gestion de notre système.

Cette phase nous permettra donc de définir toutes les


interactions entre différents composants du système d’une part et
entre le système et l’humain. Elle se divise en deux grandes
parties : le fonctionnement du système et l’algorithme.
III.8.1. Algorithme

On appelle ordinogramme, la représentation graphique d’un


algorithme. C’est-à-dire une suite de graphiques représentant
72

chaque instruction, Cet ordinogramme présenté ci-dessous


représente les différentes étapes du fonctionnement du système :
VERIFICATION RESEAU CAN

Début

Initialisation des
paramètres du PIC

Ecoute sur la liaison série Ecoute sur la liaison USB

Données Données
reçues ? reçues ?

Envoie vers USB Envoie vers série

A A

Fin

COMMANDE PAR PC

Début

Initialisation de
paramètres USB
73

Connexion de port USB

Ecoute par USB

Données
reçues ?

Réception de données

Affichez

Fin

III.8.2. Fonctionnement du système à réaliser

Le fonctionnement de notre système est résumé dans les


logigrammes ci-haut. Après avoir initialiser le microcontrôleur, Le
microcontrôleur est en écoute en attendant le changement d’états.
Une fois reçu un signal, il le transmet via la liaison USB qui
permettra à lire l’information à partir d’un ordinateur. En cas de
74

commande ou contrôle à distance par PC, le microcontrôleur sera en


attente pour recevoir l’ordre et le transmettre vers le contrôleur
CAN qui à son tour servira à l’accomplissement de la tâche.

III.9. CONCLUSION

Dans cette partie nous avons eu à comprendre théoriquement


le Nouveau système qui va remplacer l’usage du bus CAN sans une
liaison intermédiaire. Dans le chapitre suivant nous allons faire la
concrétisation de la partie théorique.

CHAPITRE IV : REALISATION

IV. INTRODUCTION
Cette partie renferme la démarche vers la solution pratique
Et démontrable, c’est la concrétisation de la partie théorique
précédente.
75

IV.1 ANALYSE DE BESOINS

N° Désignation Caractéristiques Qté

1 Microcontrôleur PIC18F4550 2

2 Contrôleur CAN MCP2515 1

3 Interface de MCP2551 1
ligne
4 Condensateur 22nf, 100nf 4

5 Résistance A 3 couleurs plus 5


tolérance (voir
dimensionnement des
Composants
6 Quartz 8Mhz 1

7 Câble USB USB 3.1 1

Tableau. IV.1 Analyse du besoin

IV.2. PIC EN MODE D’EXECUTION

Après sa programmation, le microcontrôleur pic doit être


placé en mode exécution (mode RUN) pour qu’il commence à exécuter
le programme, pour cela, il faut placer la branche MCLR au niveau
haut. (Abdelmadjid, 2012, p. 143)

Figure IV.1. Pic en mode RUN


76

IV.3. DECOUPAGE DU MONTAGE

Dans cette étape du travail, nous parlerons des


différents étages constituants le montage du système ; ces étapes
contiendront des composants électroniques et électriques dont le
dimensionnement est nécessaire.

IV.3.1 Alimentation

L’alimentation fournie l’énergie nécessaire pour faire


fonctionner tout le montage. A cet effet, la partie principale
(traitement) du montage fonctionne uniquement avec une tension
continue stable de l’ordre de 5 volts.

Figure IV.2. L’ordre de tension

IV.4 DIMENSIONNEMENT DE COMPOSANT


a) DIMENSIONNEMENT DES CONDENSATEURS

L'ajout d'un condensateur en dérivation, donc en parallèle


sur Co, provoque une diminution de la fréquence de résonance
parallèle du quartz. Ce phénomène peut être utilisé pour régler la
fréquence suivant le besoin. Les fabricants prennent en compte ce
point lors de la découpe du quartz pour avoir la fréquence correcte
pour une charge donnée. Par exemple, un quartz 32,768 kHz - 6 pF ne
fonctionne à cette fréquence que s'il est utilisé avec un circuit
dont la capacité est de 6 pF.
Nous avons utilisé un quartz de 8MHz
C1, C2= 100nf et C3, C4= 22nf

b) DIMENSIONNEMENT DES RESISTANCES

Résistances du module CAN


Les fabricants ont pris en compte ce point pour donner les
valeurs des résistances qui doivent être utilisées pour le module
MCP2515 et MCP2551. Ces résistances servent à empêcher la réflexion
du signal à l’extrémité de la ligne.
R2, R3, R4, R5= 10KΩ valeur donnée par le fabriquant
Code de couleur
77

Figure IV.3. Code de couleur Résistances du module CAN

Résistances de tirage pour le PIC

La résistance de tirage est utilisée pour fixer clairement


un état électrique dans le PIC.

VCC : tension d’entrée est de 5V

R1= 103X5= 5000Ω= 4,7KΩ

Code de couleur

Figure IV.4. Code de couleur Résistances du PIC

IV.5. DIMENSIONNEMENT DE LA CONSOLE


78

Figure IV.5. Dimensionnement de la console

IV.6. ÉVALUATION DU COUT


79

N° Désignation Qté P.U P.T Caractéristique


1 Microcontrôleur 1 18$ 18$ 18F4550

2 Socket pic 1 1.25$ 1.25$ 18F4550

3 Carte perforée 1 1.5$ 1.5$ A pointe

6 Condensateur 4 0.85$ 3.4$ 22nf, 100nf

7 QUARTZ 1 2$ 2$ 8Mhz

8 Résidence 5 0.5$ 2.5$ En couleur

9 Câble USB 1 2$ 2$ USB 3.1

10 Boitier 1 5 5$
11 Module CAN 1 20 20$ MCP2515
TOTAL 56$
10% imprévu 5.6$
30 % Main d’œuvre 16.8$
TOTAL GENERAL 78.4$
Tableau IV.2 évaluation du coût

IV.7. CONCLUSION
Ce chapitre fait part de la réalisation du nouveau système
que Nous avions ajouté au précèdent, dont nous avions fait l’étude
de l’existante, et avons proposé des solutions.
80

CONCLUSION GÉNÉRALE

Nous voici à la fin de notre travail intitulé conception et


réalisation d’un adaptateur CAN-USB permettant la communication dans
un réseau RLI.

L’intervention de l’adaptateur CAN-USB est la meilleure Façon


de pouvoir facilité la gestion d’un réseau industriel à partir d’un
réseau local.

Cette solution scientifique permet à l’usager d’avoir un


contrôle total sur le réseau CAN comme le diagnostic, commander
depuis son bureau... Le déploiement de cette présente solution est
le fruit d’un Long temps de recherche et de travail. C’est une façon
de donner le meilleur de nous-même et de contribuer à la
documentation scientifique dans des réseaux de terrain. Il servira
donc d’une roue pour tous ceux qui emprunteront la même voie que
nous en vue d’améliorer, développer ou exploiter les bases que nous
avons établies.

Non seulement que le travail scientifique est fait, mais le


Résultat pratique approuve que ce dernier remplis ses objectifs et
résout réellement un tas de problèmes qui guettent aux difficulté
rencontrés pour communiquer avec le réseau CAN.

Ce travail reste dynamique car il répond aux normes standards


Régissant tous les systèmes sur les réseaux de terrain. Il pourra
ainsi être adapté, modifié ou reformé, pour résoudre les différents
autres problèmes du genre.

En fin, notre travail se répertorie parmi ceux faits par les


Hommes. Ainsi, nous avons donc la certitude que les observations et
suggestions de nos lecteurs, nous permettront à optimiser les
imperfections et à corriger les omissions et insuffisances de cette
rédaction au fur et à mesure que nous avancerons.
81

BIBLIOGRAPHIE

1. Ouvrages
Abdelmadjid, O. (2012). les MCU. Étude détaillée du PIC
16f887. paris: TECHNOSUP, P.143.
Dominique Paret. ( 1999). Le bus CAN - Applications : CAL,
CANopen, DeviceNet, OSEK, SDS. Dunod. Inédit.
Dominique Paret. ( 2009). Le bus Can : Description, de la
théorie à la pratique. Dunod.Inédit.
Hammer MADERS, 2. (2000). Conduire un Projet
d’Organisation. Ed. D’Organisation.Inédit.
Michel, M. (2002). Borland Delphi7. CAMPUSPRESS.Inédit.
Rémy, M. (2014). Les microcontrôleurs PIC pour les
débutants qui veulent programmer sans patauger : Avec
mikroPascal, intermédiaire idéal entre BASIC et C.
Elektor.Inédit.

2. Notes de cours

KALONDA. (2018). Méthodde de recherche scientique.Isipa-


kin.Inédit.
Sammy, B. (2018). Electronique Générale. ISIPA-Kin.Inédit.
Sammy, B. (2020). Automatisation. ISIPA-Kin.Inédit.
Sammy, B. (2021). Systèmes embarqués. Kinshasa:
ISIPA.Inédit.
Sammy, B. (2022). Systèmes embarqués. ISIPA-Kin.Inédit.

3. Travail de fin de cycle


BAHAMMA, K. (2020). Télégestion dans l’industrie de l’eau
par la téléphonie du web au sein de ATEX CHEMICAL.
Biskra: université Mohamed Khider. Inédit.
Tona, M. (2021). étude conceptuelle d’un adaptateur rs-232
Permetant la communication dans un RLI. ISIPA-Kin.
Inédit.
82

4. Webographie

https://fr.wikipedia.org/wiki/condensateur, Consulté le
20/06/2022 à 22h40’.
https://teltonikamaroc.com/produit/teltonika-lv-can200/,
Consulté le 17/04/2022 à 10h35’.
Https://fr.m.wikipedia.org/wiki/interaction_homme-machine,
Consulté le 01/05/2022 à.22h12’.
www.lelectronique.com/dossier/le-bus-can-7.html
Consulté le 15/01/2022 à 12h10'.
https://www.universitylib.com/les-bus-de-communication-bus-
can-controller-area-network/, Consulté le 10/04/2022 à
11h20'.
https://www.technologuepro.com/microcontroleur/
Tutorial_mikropascal.htm, Consulté le 01/07/2022 à
11h10'.
https://fr.wikipedia.org/wiki/Microcontr%C3%B4leur_PIC,
Consulté le 06/06/2022 à.14h20'.
https://fr.m.wikipedia.org/wiki/ordinateur, Consulté le
09/06/2022 à 11h5'.
https://fr.wikipedia.org/wiki/Quartz_(%C3%A9lectronique),
Consulté le 26/06/2022 à 23h10'.
https://fr.wikipedia.org/wiki/
Serial_Peripheral_Interface#cite_note-1, Consulté le
09/01/2022.à.17h10'.
https://fr.wikipedia.org/wiki/USB, Consulté le 06/06/2022 à
13h15'.
83

ANNEXE
84
85

TABLE DES MATIERES

INTRODUCTION.....................................................................................................................................1
1. PROBLEMATIQUE.......................................................................................................................2
2. HYPOTHESE................................................................................................................................2
3. REVUE DE LA LITTERATURE..................................................................................................2
4. OBJECTIF DE L’ETUDE..........................................................................................................3
5. DELIMITATION DU SUJET......................................................................................................3
6. METHODE ET TECHNIQUE........................................................................................................3
7. SUBDIVISION DU TRAVAIL....................................................................................................4
CHAPITRE I : GENERALITES SUR LES BUS DE COMMUNICATION.............................................5
I. INTRODUCTION..........................................................................................................................5
I.1 QUELQUES DEFINITIONS...........................................................................................................5
I.1.1 bus informatique.......................................................................................................................5
I.1.3 Réseau de terrain.......................................................................................................................5
I.2. CARACTERISTIQUE D’UN RESEAU DE TERRAIN..................................................................6
I.2.1 Au niveau de la couche physique..............................................................................................6
a. Signaux.............................................................................................................................6
b. Support de transmission..........................................................................................6
c. Topologie........................................................................................................................6
d. Codage...................................................................................................................................7
e. Interface de ligne.....................................................................................................7
I.2.2 Au niveau de la couche liaison..................................................................................................7
a. Méthode d’accès...........................................................................................................7
b. Contrôleur......................................................................................................................7
c. Trame.................................................................................................................................7
d. Topologie logique.......................................................................................................8
I.3 QUELQUES BUS DE COMMUNICATION........................................................................................8
I.3.1 Liaison RS232.............................................................................................................................8
1. Présentation..................................................................................................................8
2. Fonctionnement.............................................................................................................8
3. Couche physique...........................................................................................................9
4. Couche Liaison.............................................................................................................9
I.3.2 Liaison USB.........................................................................................................................10
1. Présentation....................................................................................................................10
86

2. Fonctionnement...............................................................................................................10
3. Couche physique.............................................................................................................11
4. Couche Liaison...............................................................................................................11
I.3.3 Liaison SPI.........................................................................................................................15
1. Présentation....................................................................................................................15
2. Fonctionnement...............................................................................................................15
3. Couche physique.............................................................................................................16
4. Couche Liaison...............................................................................................................16
AVANTAGE ET DÉSAVANTAGE....................................................................................................18
I.3.4 Liaison I2C.........................................................................................................................19
1. Présentation....................................................................................................................19
2. Fonctionnement...............................................................................................................20
4. Couche Liaison...............................................................................................................21
I.3.5 Liaison RS485....................................................................................................................21
1. Présentation....................................................................................................................21
2. Fonctionnement...............................................................................................................22
3. Couche physique.............................................................................................................22
4. Couche Liaison...............................................................................................................22
I.3.6 Liaison ETHERNET..............................................................................................................24
1. Présentation....................................................................................................................24
2. Fonctionnement...............................................................................................................24
3. Couche physique.............................................................................................................24
4. Couche Liaison...............................................................................................................25
I.3.7 Liaison CAN.........................................................................................................................25
1. Présentation....................................................................................................................25
2. Fonctionnement...............................................................................................................25
3. Couche physique.............................................................................................................26
 Topologie.................................................................................................................................26
4. Couche Liaison...............................................................................................................26
5. Couche Application.......................................................................................................27
CONCLUSION........................................................................................................................................28
CHAPITRE II : CADRAGE DU PROJET..........................................................................................29
II. INTRODUCTION...........................................................................................................................29
II.1. PLANIFICATION DU PROJET...............................................................................................29
II.1.1. Méthodes d’ordonnancement de tâche...............................................................................29
a. Principes de présentation en PERT..................................................................30
87

b. Contrainte dans un graphe....................................................................................30


II.2. DEBUT DU CADRAGE..............................................................................................................31
II.2.1. Identification des tâches.......................................................................................................31
II.2.2 Dénombrement des taches....................................................................................................31
a. Analyse et détermination des taches..............................................................32
II.2.3 calcul des durées.....................................................................................................................32
II.2.4. Graphe PERT................................................................................................................33
a. Graphe PERT non ordonnée.................................................................................................33
b. Matrice booléenne.....................................................................................................34
c. Calcul des rangs.......................................................................................................34
d. Graph pert ordonné........................................................................................................35
II.2.5 CALCUL DE LA DURÉE OPTIMAL..............................................................................................35
a) Date au plus tôt (DTO)..........................................................................................35
b) Date au plus tard (DTA)........................................................................................36
II.2.6. CALCUL DES MARGES...................................................................................................36
 Marge libre......................................................................................................................36
2. MARGE TOTALE.....................................................................................................................37
3. CHEMIN CRITIQUE.........................................................................................................37
4. COUT TOTAL DU PROJET..............................................................................................38
5. INTERVALE DE CONFIANCE DE LA DUREE OPTIMALE..................................................38
5.1 Variance............................................................................................................................38
5.2 L’écart type du projet.............................................................................................38
5.3 La durée moyenne du projet.............................................................................................39
5.4 L’intervalle de confiance...............................................................................................39
CONCLUSION........................................................................................................................................39
CHAPITRE III : ETUDE DU PREALABLE ET DESCRIPTION DU NOUVEAU SYSTEME.............40
SECTION I : ETUDE DU PREALABLE.............................................................................................40
INTRODUCTION...................................................................................................................................40
III.1. DESCRIPTION DE L’EXISTANT........................................................................................40
III.1.1. CAN série......................................................................................................................40
III.1.2. LV-CAN200...................................................................................................................41
III.2. CRITIQUE DE L’EXISTANT...............................................................................................42
III.3. PROPOSITION DES SOLUTIONS........................................................................................42
III.4. CHOIX DE LA SOLUTION...................................................................................................43
SECTION II : ETUDE DETAILLEE.................................................................................................44
INTRODUCTION...................................................................................................................................44
88

III.5. ETUDE STRUCTURELLE.......................................................................................................44


III.5.1. Phase de définition fonctionnelle........................................................................................44
a. Schéma Synoptique Du Système Réalisé............................................................44
III.5.2. Phase De Définition Conceptuelle........................................................................................45
a. Poste de control.......................................................................................................45
b. Partie commande.........................................................................................................46
III.5.3. Phase de définition physico-morphologique.........................................47
a. Schéma de principe...................................................................................................48
a. Détail sur les matériels......................................................................................48
a.1. Le Bus CAN.....................................................................................................................48
1. Fonctionnement...........................................................................................................49
 Signaux.................................................................................................................................50
 Topologie.............................................................................................................................50
 Codage..................................................................................................................................50
 Interface de ligne.......................................................................................................50
3. Couche liaison...........................................................................................................52
 Méthode d’accès.............................................................................................................52
 Trame...................................................................................................................................52
Adressage..................................................................................................................................55
Contrôleur................................................................................................................................55
4. Liaison en mikropascal..........................................................................................56
 Bibliothèques de la liaison CAN...........................................................................56
 Routine de la bibliothèque CAN.............................................................................56
a.2 Microcontrôleur............................................................................................................59
a.2.1 Programmation du pic.............................................................................................60
a.2.2 Famille du PIC..........................................................................................................60
PIC18F4550................................................................................................................................61
2. REGISTRES............................................................................................................................61
Registre ADCON1.....................................................................................................................61
Registre CMCON.......................................................................................................................62
Registre LATX.........................................................................................................................62
a.2 L’alimentation...............................................................................................................62
a.3 Ordinateur.......................................................................................................................62
a.4 USB......................................................................................................................................63
III.5.4. Phase De Définition Détaillée...................................................................64
89

III.5.4.1 Schéma du circuit...........................................................................................64


III.5.4.2 Détails sur les composants utilisés....................................................64
a. Résistance....................................................................................................................64
a. 1. Représentation symbolique de la résistance........................................65
a.2. Image de résistance..................................................................................................65
b. Le condensateur.........................................................................................................65
b.1 Représentation symbolique de condensateur....................................................65
b.2 Image de condensateur...............................................................................................66
III.6. PROGRAMMATION..........................................................................................................66
III.6.1. Langage de programmation informatique...........................................................................66
a.1. Description du logiciel...............................................................................................................67
a.1. Simulation de mikropascal avec ISIS........................................................................................69
III.7. Étude fonctionnelle.................................................................................................................69
III.7.2. Fonctionnement du système à réaliser................................................................................72
CONCLUSION........................................................................................................................................72
CHAPITRE IV : REALISATION.......................................................................................................73
IV. INTRODUCTION...........................................................................................................................73
IV.1 ANALYSE DE BESOINS............................................................................................................73
IV.3.1 Alimentation..........................................................................................................................74
IV.4 DIMENSIONNEMENT DE COMPOSANT......................................................................................74
a) DIMENSIONNEMENT DES CONDENSATEURS..................................................................74
b) DIMENSIONNEMENT DES RESISTANCES.......................................................................75
Résistances du module CAN...............................................................................................75
Code de couleur.....................................................................................................................75
Résistances de tirage pour le PIC..............................................................................75
Code de couleur.....................................................................................................................75
IV.5. DIMENSIONNEMENT DE LA CONSOLE..................................................................................76
IV.6. ÉVALUATION DU COUT.........................................................................................................77
CONCLUSION........................................................................................................................................77
CONCLUSION GÉNÉRALE....................................................................................................................78
BIBLIOGRAPHIE.................................................................................................................................79
1. Ouvrages............................................................................................................................79
2. Notes de cours...............................................................................................................79
3. Travail de fin de cycle............................................................................................79
4. Webographie...........................................................................................................................80

Vous aimerez peut-être aussi