Machine à états finis Arduino et multitâches (1 / 5 étapes)

Étape 1: La première machine d’État: 1 master et 3 esclaves concurent

L’interface de contrôle :

J’utilise un arduino uno avec une petite interface (2 boutons (ATU1, ATU2) pour la gâchette sur et 3 LEDS (11, 12, 13) pour l’action de sortie) et un LCDKeypad.

Les machines :

Le microcontrôleur peut contrôler un maître machine qui peut lancer 3 differents esclave machines :

-la machine FB clignoter une led à 1Hz. Si ATU1 est pressé, il désactive la machine FB, si ATU1 est tirée, elle redémarre la machine FB

-la machine SB clignoter une led à une fréquence plus rapide sans synchronisation ou d’une interaction avec la machine FB. Si vous appuyez sur gauche (sur le front), il désactive la machine SB, si vous appuyez sur SELECT (sur le front), il redémarre la machine SB.

-la machine pompe qui est exécutez stop d’une sortie ou un relais pour démarrer une pompe. Si vous appuyez sur UP (sur le front), la sortie est haute, si ATU2 est pressé (sur le front montant) la sortie est éteinte.

Il s’agit d’uneencapsulation n : lorsque vous désactivez un état d’encapsulation, tous États encapsulés sont pas activés en même temps.

Lorsque vous lancez États parallèles dans l’automatisation, vous faites un Divergence des séquences simultanées ou machines à.

Le schéma :

En raison du bouclier LCDkeypad, servent beaucoup de pins : pins 4, 5, 6, 7, 8, 9, 10. Les touches du clavier sont analogiques sur broche A0.

Il reste donc quelques montant de broches pour un système de contrôle. Cela la raison pourquoi j’ai ajouté un circuit I2C d’e/s d’extension utilisés dans les étapes suivantes. Vous ignorera à cette étape : il suffit de garder votre esprit ATU1, ATU2, touches du clavier, et la broche 11, 12, 13 numérique sorties.

Le programme :

Beaucoup de commentaires sont à l’intérieur.

Les messages affichés :

La première ligne indique quelle machine est lancé.

La seconde ligne affiche si des actions sont en cours d’exécution (pièce de monnaie se déplaçant d’un État à l’autre).

Articles Liés

Machine à états finis sur un Arduino

Machine à états finis sur un Arduino

Aujourd'hui, nous mettrons en œuvre une machine d'état fini (FSM) sur un Arduino. Cela vous permet de mettre en place des systèmes à un comportement précisément défini issu des États distincts. Vous apprendrez ce qu'une machine à états finis est et c
État de machine et le multitâche sur arduino avec extenseurs SPI

État de machine et le multitâche sur arduino avec extenseurs SPI

La semaine dernière, je posais créer un système de feux d'artifice pilote avec un arduino. Il fallait environ 64 sorties pour contrôler les incendies. Une façon de le faire consiste à utiliser des succédanés de l'IC. Donc 2 solutions sont disponibles
Multitâche sur Android

Multitâche sur Android

Andro racineAujourd'hui je vais vous parler de multitâche sur les appareils Android Apps flottant. Le multitâche est très utile et une fonctionnalité intéressante sur Windows et autres os. Multitâche donne la possibilité de faire plus alors une tâche
Machine à laver à rebours - Arduino

Machine à laver à rebours - Arduino

Bonjour et Bienvenue sur mon instructable pour une machine à laver à rebours. La minuterie est exploitée avec le microcontrôleur très populaire de l'Arduino. Voir ici pour plus d'informations. Page d'accueil de l'ArduinoObjectifL'objectif de ce proje
Arduino mini Multi fonction Controller w / LCD Display

Arduino mini Multi fonction Controller w / LCD Display

ce Instructable s'appuie sur la surveillance de l'environnement Arduino mini et mini moniteur Arduino EEG Instructables.Il vous permet de contrôler jusqu'à 4 relais en utilisant l'heure, la température et/ou lumière, votre esprit, ou quel que soit le
Machine de vote Arduino

Machine de vote Arduino

Cette instructable va vous apprendre à construire une machine à voter Arduino basé simple à l'aide de composants simples tels que les boutons et écran LCD. La fonctionnalité de mise en surbrillance de ce système est que Serial Monitor dans IDE Arduin
Arduino - Oscilloscope multi-canaux (pauvre Oscilloscope)

Arduino - Oscilloscope multi-canaux (pauvre Oscilloscope)

je vous présente des mises à jour logicielles pour l'Arduino Oscilloscope (Oscilloscope du pauvre) qui permettent de visualiser les données de deux ou trois canaux simultanément. Les caractéristiques principales sont identiques à l'oscilloscope origi
Clavier d’entrée de Validation à l’aide de la programmation des machines état

Clavier d’entrée de Validation à l’aide de la programmation des machines état

Le problème :Vous avez un projet qui accepte les commandes à l'aide d'un clavier 16 touches et que vous souhaitez effectuer la validation sur les commandes que chaque caractère est tapé.Exemple :Voici le protocole (commandes) en utilisant seulement u
Arduino Compatible multi-fonctions voiture

Arduino Compatible multi-fonctions voiture

Brève introduction :FreaksCar est une plateforme de développement robotique, complètement open source, nouvelle intro abordable, facile à utiliser et amusant à la programmation, l'électronique et robotique. Elle est orientée vers les enfants d'âge él
Hélisurface Arduino pour mini Quad Copter

Hélisurface Arduino pour mini Quad Copter

Utiliser cette plate-forme pour formation d'atterrissage de précision ou défiez vos amis. Pourquoi ne pas mettre en place une piste et laisser l'hélisurface à temps vos tours ?Si vous aimez cette instructable - Votez !Faisons-facelui - depuis que vou
Arduino Run précise liquide/poudre distributeur système

Arduino Run précise liquide/poudre distributeur système

Objectif : Faire quelque chose à voir certains de mesure pour vous, que ce soit pour la cuisine ou dans le cas contraire. Il fera aussi bien liquides et poudres dans le même panneau. Il utilise un Arduino pour faire fonctionner le système.NOTE : Aucu
Arduino lumière variateur

Arduino lumière variateur

Un système qui imite les cycles du jour.Un système de simulation lumineuse journée à l'aide de CCF.Étape 1: IntroductionCe système va permettre d'imiter un levier de soleil (LV) et un coucher de soleil (CO), une fois par jour. Cet appareil est destin
Plusieurs DEL clignotant à des rythmes différents

Plusieurs DEL clignotant à des rythmes différents

Dans ce tutoriel, je vais vous montrer comment à clignoter plusieurs del à des rythmes différents sur Arduino-comme les planches à l'aide de VIPER.Un témoin clignotant est connu comme le « Bonjour le monde des appareils embarqués »... mais avec VIPER
Tournevis sonique Style Computer Interface

Tournevis sonique Style Computer Interface

ces instructions documentera la création d'un dispositif HCI dans le style d'un tournevis sonique.Les principales composantes sont deux émetteurs-récepteurs de RFD21733 et un 3.0 Teensy.Une vidéo de démonstration de l'appareil de travail peut être tr