Monte Charge VHDL
Ahmed BAIDAOUI
Raymond MOUNISSAMY
octobre 2013
Le Monte-charge
1. Caractéristiques du monte-charge
Notre but est de réaliser un monte-charge avec un modèle logico temporel, qui tient compte des temps de réponse mécaniques (capteurs, actionneurs et durée de transition d’un étage à l’autre). Le monte-charge possède ici 3 étages, avec pour chaque étage un bouton d’appel (a1, a2 et a3) et un capteur de présence (p1, p2 et p3). Il possède deux moteurs, un pour la descente(d) et un pour la montée(m). A l’état initial, la cabine est au niveau p1, à l’arrêt. Quand la cabine est appelée, elle va directement sans arrêt à sa destination. On considère que l’appel de l’étage le plus haut est prioritaire (en montée comme en descente) :
Modèle du monte-charge
1
Temps caractéristiques :
Temps de réponse
0,25s
0,10s
0,10s
Actionneurs (moteurs)
Détection de présence
Bouton d’appel
Passage par un étage sans arrêt :
0,2s
Maintien du capteur pendant un temps
Temps de réponse des capteurs et actionneurs
Durée des trajets :
Entre l’étage 1 et l’étage 2 => 1s.
Entre l’étage 2 et l’étage 3 => 2s.
2. Le modèle non synthétisable du monte-charge
Le modèle non synthétisable est un modèle qui ne pourrait être programmé sur FPGA. Il a pour but de faire une étude du modèle, avec les temps de réponse, sans pour autant mettre des compteurs pour les temporisations (remplacé par les fonctions after, wait for…). C’est un modèle qui est rapide à réaliser et qu’on peut facilement débuguer grâce à la fonction assert.
Ce modèle tiendra compte du temps de réponse des boutons d’appel, le temps de passage par un étage sans arrêt et la durée entre deux étages. Pour faire ce modèle, nous somme parti d’un compteur avec 5 valeurs possibles (1 à 6 donc 3 bits) dont voici le schéma RTL :
Schéma RTL du modèle non synthétisable
Rouges : entrées
Bleu : sorties
2
Prenons le cas de la montée :
A l’initialisation, le compteur est à 1