Étape 1: pièces
1. Nexys4DDR Commission
Le jury de Nexys4 DDR est la plateforme de développement basée sur le Xilinx XC7A100T-1CSG324C Artix-7 Field Programmable Gate Array (FPGA).
Artix-7 100 t caractéristiques comprennent :
- 15 850 tranches de logique, chacune avec quatre lut d’entrée 6 et 8 tongs
- Bloc de 4 860 Kbits de fast RAM
- 6 horloge gestion carreaux, chaque boucle à verrouillage de phase (PLL)
- 240 slices DSP
- Vitesse d’horloge interne supérieure à 450 MHz
- Sur puce convertisseur analogique-numérique (XADC)
Le DDR Nexys4 vous propose les ports et les périphériques suivants :
- 16 commutateurs d’utilisateurs
- 16 LEDs utilisateur
- Deux écrans de 7 segments de 4 chiffres
- USB-UART Bridge
- Deux LEDs tricolores
- Connecteur de carte micro SD
- sortie VGA 12 bits
- Sortie audio PWM
- Microphone PDM
- accéléromètre 3 axes
- Capteur de température
- 10/100 Ethernet PHY
- 128MiB DDR2
- Serial Flash
- Quatre ports Pmod (avec 8 e/s par port)
- PMOD pour signaux XADC (avec 4 entrées différentielles)
- Port USB-JTAG (pour la programmation de FPGA et de la communication)
- Hôte USB HID pour les souris, claviers (et les bâtons de mémoire pour la configuration).
Cette planche est utilisée comme contrôleur principal dans le projet, de centraliser les données d’entrée (à partir des modules ultrasons, capteur infrarouge et des encodeurs rotatifs) et contrôler les périphériques de sortie (écran LCD, pilote automobile et la deuxième plate-forme via RF).
2. mobile plate-forme
Les deux plate-forme ont été acquis sous forme de kit et comprend la plaque de support en plastique principal, deux DC motors-les roues motrices (avec équerres de fixation), une troisième roue passive et un bouton d’alimentation (il y avait également un support de piles AA-taille quatre, mais il n’était pas utilisé). La structure multicouche a été obtenue à l’aide des conseils de cooper PCB ordinaire (en raison de leur disponibilité, prix et utilisation ajoutée comme un plan de masse).
3. écran LCD
Le HSD043I9W1-A d’afficher HannStar est un affichage à cristaux liquides couleur à matrice active thin film transistor (TFT) (LCD). Ce module est composé d’un panneau LCD TFT, une conduite et un système de rétro-éclairage. Ce TFT LCD dispose d’un espace d’affichage actif de pouce mesuré en diagonale (16:9) 4.3 avec une résolution WQVGA (480 horizontal par 272 pixels verticaux). Les données RVB sont entrées via parallèle 24 bits (8 bits par couleur) et des signaux de synchronisation (contrôle) peuvent être soit via synchronisation Sync/verticale horizontale (comme ceux utilisés dans l’interface VGA), ou en utilisant DataEnable/DataClock (où DataEnable est élevée lorsque les compteurs d’affichage horizontal et vertical sont dans la zone active, avec le DataClock à 10MHz). Il a été récupéré sur un navigateur GPS défectueux (comme remarqué par son cadre en plastique de marque), et parce qu’il avait un câble de flex plat assez inaccessibles 30 broches 0,5 mm tangage, un Comité d’adaptateur devait être construits pour permettre l’utilisation d’un en-tête de tangage de 2,54 mm plus à l’aise comme un moyen de connexion à la carte FPGA.
4. infrarouge thermomètre
Ce module a été également récupéré sur un thermomètre domestique-utilisation dont écran fissuré. L’absence de toute documentation d’interface de données, combinée avec la puce à bord avec aucune marque, a donné lieu à un besoin de décodage de protocole manuel. Ainsi, les données suivantes ne peuvent pas être uniques, ni le moyen le plus efficace d’acquérir des données de température, mais il semble être assez stables pour ce projet. Par le biais de l’en-tête de bord (avec les broches marquées comme « V D C G A »), le microcontrôleur embarqué/ASIC semble sortie un SPI-comme des données, avec le brochage suivant :
- V = 3V3 VCC,
- D = données série,
- C = serial clock,
- G = sol,
- A = « Action » / Slave Select (lié au bouton « Mesure » le thermomètre).
En outre, un cinquième broches devaient être soudé (comme expliqué ci-dessous) à la touche « Menu ». Ce bouton et sont tous deux la « mesure » une basse active (lorsque vous appuyez sur, ils tirent le signal à la masse).
La façon dont le thermomètre semble fonctionner est la suivante :
-L’appareil est sorti de la mode "veille" "Menu" en tirant vers le bas, en entrant dans l’oreille mesure mode (ce mode implique une gamme de température très strictes, 34 à 42 degrés Celsius et un temps de chauffe de 2 secondes, donc ne convient pas pour un fonctionnement continu),
-Pour le transit au mode de mesure de température de la pièce, « Menu » et « Mesure » doivent être tiré vers le bas pendant une seconde, puis relâché,
-Maintenant, chaque fois que la « Mesure » du signal est faible, la température ambiante est mesurée (-20 à + 80 degrés Celsius) et émis par l’intermédiaire de la broche "D", en synchronisation avec l’horloge interne générée de l’appareil disponible sur la broche "C",
-Pour obtenir une lecture continue, le signal de « Mesure » est tiré bas puis haute à raison de 5Hz, 50 % duty cycle (essais avec une fréquence plus élevée et/ou en pourcentage de cycle inférieur droit s’est avérée trop vite pour bouton interne de l’appareil debouncing sous-composant, lire l’entrée comme une presse continue, qui se traduit par un manque de sortie de données). Après que la mesure est terminée, les données sérielles outputted sont lu à pointe tombant de l’horloge.
Chaque cycle de mesure génère une chaîne de données série 40-bit, composée des mots de 8 bits suivants :
0x5B t1t2 t3t4 checksum 0x0D
Où les mots de 4 bits t1, le t2, le t3 et le t4, lors de la conversion de sortilège aux résultats de char en t1 = dixièmes de degré, t2 = degrés, t3 = 1/10 degrés, t4 = 1/100 degrés Celsius. Somme de contrôle est la somme binaire des 24 premiers bits et 0x5B et 0x0D représentent le début et la fin du flux de données.
5. les ultrasons
Le HC-SR04 ultrasons allant module fournit fonction de mesure sans contact de 2cm à 400cm, avec une précision jusqu'à 3mm. Les modules comprend des circuit émetteur, récepteur et contrôle par ultrasons. Pour mesurer la distance, le protocole suivant devait être mis en œuvre: « ergot » est tiré élevé pour 10us (le module envoie huit 40 kHz), et une fois le module reçoit le signal d’impulsions retour, il tire la broche « Echo » élevée pour un temps fixé de 1uS par 58 centimètres de distance mesurée.
6. module émetteur RF
Ces modules RF 2,4 GHz ont été récupérés dans un contrôle à distance et suivez standard 50Hz (et grand temps de 1 à 2 ms) signaux PWM mis en œuvre en qualité hobby analogique contrôlé des moteurs et des servomoteurs.
La partie émettrice a été découpée de la remote control board et remonte seulement à trois broches (3V3 VCC, GND et données). Protocole de la broche de données a été décodé et semble accepter le flux série suivant : chaque 20ms, un train d’impulsions contenant quatre impulsions de haut niveau (chaque impulsion correspondant à chaque canal sur le récepteur, avec sa durée égale avec l’ajout de 400us à la durée d’impulsion de source), chacun étant séparé
7. double conducteur de moteurs DC
Ce pilote de moteur dual bidirectional est basé sur le L298 double H-Bridge Motor Driver Circuit intégré. Le circuit permet le contrôle d’État et de la direction des deux moteurs de 5V à 35V, jusqu'à 2 a chaque (25W total max). Logique est fourni à un niveau 5V et comprend un Enable, et deux signaux pour la polarité du moteur d’entraînement de contrôle (tel que représenté dans son schéma interne). Un 10 Ohm, résistance de puissance de 5W limite le courant de source par le pilote au sujet de 1 a, réduisant le risque d’épuisement prématuré de la pile.
8. convertisseur de niveau logique
Le JY-MCU est un 4-way MOS-FET-based niveau convertisseur bidirectionnel. La tension de référence de bas niveau est fournie par un régulateur de tension interne 3V3, qui à son tour est alimenté par la tension de référence de haut niveau (dans ce cas 5V).
9. bouton rotatif
Ce composant est un standard 24-étapes par Révolution passive encodeur rotatif, utilisé pour fournir le nombre de rotation totale ou partielle des roues, ce qui permet une mesure et contrôle de la distance parcourue sur le terrain de chaque roue.
10. Step-Up commutation mode d’alimentation
Propulsé par un XLSemi XL6009 convertisseur Boost DC / DC de 400KHz 60V 4 a, ce module fournit le rail de tension 19V requis pour le rétroéclairage de l’écran LCD, conversion du rail 12V.
11. step Down Switching alimentation
Propulsé par un LM2596 TI 150 kHz 40V 3 a convertisseur Buck DC / DC, ce module délivre le rail de tension 5V nécessaire pour Nexys4 Conseil, modules ultrasons, logique de moteur et l’émetteur RF, conversion du rail 12V. Il intègre un afficheur 7 segments, sur lequel il indique la tension d’entrée ou de sortie, ou le courant de sortie (mode sélectionnable via le bouton), permettant à l’utilisateur de l’utiliser également en mode de courant constant (en plus de l’habituelle tension constante).
12. porte-piles
Il s’agit d’un support de batterie standard capable de transporter huit piles AA (R6) 1, 5V piles alcalines, fournissant le rail de tension 12V exigé par les deux convertisseurs DC / DC et le moteur.
13. ESC
Il s’agit d’un normalisés, hobby-niveau, alimenté par microcontrôleur, ESC (variateur électronique) qui convertissent les deux signaux PWM de 50Hz (correspondant à la manette des gaz et direction) dans les six signaux nécessaires au conducteur de moteur. Il nous permet d’interfacer le simple L298 H-bridge au récepteur RF.
14. récepteur RF
Ce récepteur convertit le signal reçu en quatre canaux séparés, mettre en œuvre le 50Hz, 1 à 2 ms grand temps PWM.
15. servomoteur
Ce moteur PWM-commandé intègre un circuit de rétroaction analogique afin de maintenir sa position même sous charge et est 100 % compatible et conçus pour le type de récepteur/contrôleur de RF est utilisé dans ce projet. Il permet de modifier l’angle de la civière de fortune dans l’ordre pour ramasser la « victime ».
16. Step-Down Switching mode d’alimentation
Similaire au convertisseur buck utilisé sur l’autre plateforme, il utilise également le régulateur de tension LM2596 même, mais n’inclut pas un afficheur de courant/tension, ni la capacité limite de courant.
NOUVEAU : 17. Magnétomètre
Afin d’éliminer la dérive mécanique tandis que la première plate-forme se déplace vers l’avant ou vers l’arrière et aussi permettre une mesure précise et le contrôle de l’angle de rotation tandis que la plate-forme de tourner à gauche, de droite ou de 180 degrés, un magnétomètre 3 axes HMC5883L (ou boussole numérique) a été intégrée dans la conception. En mesurant l’intensité du champ magnétique sur l’axe X et Y et en appliquant une opération arctan2() (également connu comme arctan(x/y)), un cap nord magnétique peut être calculé.