La première expérience avec Arduino

  • Dec 24, 2019
click fraud protection

J'ai longtemps voulu apprendre Arduino. Il est micro-ordinateur très pas cher, qui dispose de 14 entrées / sorties numériques et 6 entrées analogiques. Pour Arduino possède de nombreux modules supplémentaires (capteurs, claviers, écrans, moteurs), car il a créé le programme dans un langage simple programmation linguistique et le chargement via USB.

au cours de grands freebies chinois avant l'automne dernier je l'ai acheté pour 5 cents un tas de cartes et des modules complémentaires. Le matin, je me suis finalement commencé à comprendre tout cela.


Arduino UNO est utile en tant que plate-forme de développement (la carte est directement connecté à un ordinateur, et toutes les connexions sont faites sans fil à souder avec des connecteurs). Ce paiement sur Aliexpress frais de 2,99 $. Lorsque le développement est terminé, dans le dispositif fini peut utiliser une taille beaucoup plus petite et plus économique moins cher Arduino Mini ProAvoir les mêmes possibilités. elle Il en coûte moins de 100 $ - $ 1.3.

instagram viewer

Arduino est pas un jouet pour moi. Je veux l'aider à faire un très précis, je avais besoin de l'appareil. Les deux premières choses que je veux faire - et le LATR électronique goniomètre.

Goniophotomètre - un dispositif qui permet de déterminer l'angle de flux et l'éclairage lumineux. Il fait défiler la cartouche moteur avec une ampoule de 360 ​​degrés dans le plan horizontal, la mesure de niveau de lumière dans chaque position de la lampe, et calcule ensuite le flux et l'angle de la lumière.

Électronique LATR - un appareil qui vous permet de recevoir une tension alternative de 1 à 256 volts par incréments de 1 volt. Il sera utile pour mes tubes à essai et pour régler la vitesse du ventilateur (avec gradateurs conventionnels ventilateurs bourdonnement). L'idée est de commander petit transformateur avec huit enroulements secondaires 1, 2, 4, 8, 16, 32, 64 et 128 volts. les navettage via des relais commandés par l'Arduino, vous pouvez obtenir toute tension.

Aujourd'hui, j'ai appris à contrôler le moteur pas à pas. Moteur 28BYJ-48 en même temps que la carte de commande Il en coûte seulement 1,65 $. Il dispose d'une boîte de vitesses intégrée et il fait une révolution complète en 2048 ou 4096 des demi-étapes.

Au début, j'essayé de faire face à la bibliothèque prête et Stepper AccelStepper, mais je me suis rendu qu'il est plus facile de le faire sans eux et entraîner le moteur directement.

J'ai trouvé sur Internet et le contrôle des logiciels de schéma de câblage. Lancé - filature. J'ai appris à faire des cycles. Puis il a compris comment créer des fonctions. En conséquence, trois heures après la première fois de sa vie comprenait l'Arduino, j'ai créé une fonction qui sait comment faire la bonne quantité de pas du moteur.
L'ensemble du programme, le moteur tourne dans le sens horaire par est un demi-tour avec une pause de 200 ms est la suivante:

les repères de int [] = {8, 9, 10, 11}; // Définissez les broches dans l'ordre

phases int = 8;

bool motorPhases [8] [4] = {// [Phase] [PIN]
// broches
// Winding A B A B
// Pin moteur 1 2 3 4
// Couleur Bl Pi Ye Or
{ 1, 1, 0, 0},
{ 0, 1, 0, 0},
{ 0, 1, 1, 0},
{ 0, 0, 1, 0},
{ 0, 0, 1, 1},
{ 0, 0, 0, 1},
{ 1, 0, 0, 1},
{ 1, 0, 0, 0}
};

void setup () {
pour (int i = 0; i <4; i ++) pinMode (broches [i], OUTPUT);
}

la phase int = 0;
int _step = 1; // Si l'étape de changer le signe sur -1 - changer le sens de rotation.

void loop () {
int a = 2.047;
l'étape (a);
retard (200);
}

étape void (int x) {
int i;
for (i = 0; Je{

la phase + = _step;
si (phase> 7) Phase = 0;
si (phase <0) Phase = 7;

pour (int i = 0; i <4; i ++) {
digitalWrite (broches [i], ((motorPhases [Phase] [i] == 1)? HIGH LOW));
}

// Pause pour une rotation sur un demi-étape
retard (2);
}

digitalWrite (broches [0], LOW);
digitalWrite (broches, de faible [1]);
digitalWrite (broches [2], LOW);
digitalWrite (broches [3], LOW);
}

Bien sûr, doivent encore faire face à un si grand nombre, mais un bon départ. :)

Aujourd'hui, j'ai commandé plusieurs modules écran LCD de deux lignes avec six boutons pour 2,60 $, Une paire de modules à quatre relais de puissance pour 1,95 $ (Il y a huit modules et des relais, mais j'ai décidé que les deux modules 4 relais pratique) membrane chetyrohknopochnuyu clavier pour 0,53 $, Indicateur Chetyrohrazryadny pour 1,4 $. Plus commandé deux éclairage capteur différent pour 0,4 $ et pour 0,6 $Mais je les ai manqué - ils sont le seuil et utilisés pour allumer les lumières la nuit. Mais rien d'utile. Commandé capteur délicat avec deux photodiodes et deux ADC pour 1,75 $ et un simple capteur avec une sortie analogique pour 0,9 $.

© 2017 Alex Nadozhin

Le thème principal de mon blog - L'équipement pour la vie humaine. J'écrire des commentaires, partager des expériences, parler de toutes sortes de choses intéressantes. Et je fais des histoires des endroits intéressants et raconter des événements intéressants.
moi Ajouter comme ami
ici. Rappelez-vous l'adresse courte de mon blog: Blog1.rf et Blog1rf.ru.

Mon deuxième projet - lamptest.ru. Je teste des lampes LED et figure aide à ceux qui sont bons et qui ne sont pas.