Intro pour modéliser l’avion pilote automatique!!! (3 / 7 étapes)

Étape 3: Démo le contrôleur PID

Avant que j’ai jeté mon arduino dans un avion, j’ai décidé que ce serait une bonne idée de construire une plate-forme pour tester le PID sur. Mon contrôleur PID utilisé les pièces suivantes :
Eflite Outrunner moteur
35 amp ESC
11.1 accu LiPo V
1/2 PO EN PVC
Une vieille scie cheval pour un stand

Le contrôleur se penche sur l’angle du bras est suspendu à l’aide de notre accéléromètre et gyroscope et utilise ces données pour déterminer combien de courant pour jeter le moteur afin de faire au niveau du bras.

Parce que l’ESC sert à brancher votre moteur dans un bus de récepteur radio conçu pour les servos, il est relativement facile de contrôler un moteur AC brushless avec une ESC sur un Arduino grâce à la Servo.h + Servo.cpp dans votre dossier de bibliothèques. Je crois que le protocole servo utilise pulse position modulation (PPM) qui peut être réalisée à l’aide d’un PWM épingler sur votre arduino avec la fonction servo.write().
http://www.Hooked-on-RC-Airplanes.com/servo-Tutorial.html

Il est important d’être conscient de sécurité lors de l’exécution de ces moteurs, car ils vont très vite. * TOUJOURS porter des lunettes de sécurité * * omets l’hélice jusqu'à ce que vous devez absolument TI *

Vous devez écrire une fonction pour arm() ; votre ESC afin que vous pouvez régler sa vitesse. Fondamentalement, vous devrez écrire l’ESC, bas, haut et puis faible encore.
http://www.Arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1226292633 Ce forum va plus comment contrôler un moteur brushless et est où j’ai obtenu cadre pour mon arm() ; fonction et setSpeed () ; fonction.

Vous pouvez simplement utiliser un servo.write(0-180) pour régler votre vitesse sur votre esc, mais vous pouvez aussi les mapper sur une échelle de 0 à 100. Vous pouvez télécharger les motor_functions au bas de l’étape. Si cela ne fonctionne pas s’il vous plaît me dire!! Je peux simplement ajouter dans les instructions!

En utilisant ces fonctions vous donne le contrôle complet de moteur. Vous devrez bouger avec votre propre code pour votre ESC particulière. En déclarant nos fonctions capteur indépendamment de la boucle, nous pouvons maintenant courir le moteur et les capteurs en même temps. C’est où j’ai touché mon premier revers majeur. Parce que le moteur tire tellement actuel de la batterie, c’est induire courants dans mon bus I2C. Mon capteur va fonctionner très bien quand le moteur a été éteint, mais quand le moteur était en marche que les valeurs étaient quasiment vides de sens.
J’ai pris les mesures suivantes pour nettoyer le bruit :
J’ai ajouté un anneau de ferrite à l’esc (rétrospectivement, cela probablement juste protège l’ESC de bruit-appris à utiliser ceux-ci après mon Zagi s’est écrasé à http://www.hobbyking.com/hobbyking/store/__23206__Clip_On_Soft_Ferrite_Rings_5pc_.html)
J’ai monté les capteurs aussi loin que possible du moteur
Tous mes fils pour essayer de minimiser l’induction actuelle torsadés

J’ai trouvé ces sites Web pour aider à résoudre mon problème :

//this http://DIYDrones.com/Forum/topics/PID-Controller-I2C-bus-Noise-from-ESC?xg_source=Activity est un fil que j’ai commencé sur DIY drones
http://forum.allaboutcircuits.com/showthread.php?t=41916

Cela a semblé minimiser l’erreur de capteur, mais encore environ 5 sur chaque 20 valeurs étaient hors de +-10 degrés. Pour cela nettoyer j’ai véhiculée par les valeurs de capteur de :
Construction d’un maton pour contenir 20 valeurs tels qu’ils apparaissent par ordre chronologique
Construction d’un tableau qui a tenu les 20 dernières valeurs triées (ordre croissant ou décroissant ; peu importe car nous recherchons la médiane)
J’ai utilisé une sorte de bulle pour aider à trier mes valeurs

J’ai trouvé ce site pour aider à expliquer comment trier le tableau efficacement :
http://mathbits.com/mathbits/CompSci/Arrays/Sorting.htm
Vous devrez construire des multiples de ces fonctions pour plusieurs valeurs de tri (x, y, z; dx, dy, dz)

Mes fonctions de tri et de la médiane de bulle peuvent être téléchargées en bas de l’étape !

Maintenant que vos valeurs de capteurs sont congrus et vous pouvez contrôler votre moteur à courant alternatif, nous pouvons commencer le contrôle PID réel !
La page wikipedia fait un bon travail expliquant comment votre programme doit être structuré à l’aide de psuedocode. Il y a beaucoup, beaucoup de moyens à mettre en œuvre cette. Cela dépend de combien de temps vous voulez utiliser vos commentaires pour vous integral et derrivative les termes.

vous pouvez trouver mon PID_sample au bas de cette étape!!

Réglage du PID: il existe plusieurs façons de régler un PID. Vous pouvez en logiciel, guess et cocher, je vais essayer à l’aide de la méthode Zieger Nichols.
Quelque sorte, vous démarrez en exécutant uniquement votre sortie avec l’erreur proportionnelle. alors que le terme proportionnel ne dépasse jamais le débit la valeur KP. Fondamentalement, le système oscillera, vous souhaitez amortir autour de votre point de consigne (ou à tout le moins pas augmenter au fil du temps!). Une fois que vous avez trouvé un KP appropriée vous pouvez affecter KD ou KI. Différentes personnes disent des choses différentes quand il s’agit de que l'on faire en premier, mais terme intégral va accélérer une souscorrection vers le point de consigne alors que le terme de derrivative va ralentir une sur-correction.

Désolé tout le monde que j’ai essayé d’intégrer les vidéos, mais pour certaines raisons, il n’a pas fonctionné. Voici un lien :
http://www.youtube.com/watch?v=_qlgWSP-KFK&feature=g-UPL

Après avoir joué avec le code pendant un certain temps il devrait devenir évident comment adaptatif ce type de contrôleur est votre utilisation du système. N’oubliez pas, essayez et feedforward autant que vous savez comment ! Une fois que vous êtes à l’aise n’hésitez plus et installez le contrôleur!!

Articles Liés

Bateau pilote automatique - basée sur l’Arduino

Bateau pilote automatique - basée sur l’Arduino

Voici comment construire un pilote automatique qui peut diriger un RC bateau à waypoints ! Il est facile à construire, basé sur la populaire plate-forme Arduino et idéal pour les amateurs qui veulent certaine pratique soudure ! Avec ce pilote automat
CAD modéliser un pneu dans SolidWorks

CAD modéliser un pneu dans SolidWorks

Dernièrement, j'ai été faire un usage intensif de Solidworks pour modéliser tout un tas de pièces pour les voitures RC. Au cours de la rédaction une Instructable sur 3D-impression de vos propres pistes, j'ai eu l'idée qu'il pourrait être très bénéfiq
Comment modéliser et imprimer une Sneaker

Comment modéliser et imprimer une Sneaker

Dans ce Instructable je vous mènera à travers le processus, que j'ai utilisé pour concevoir, modéliser et imprimer une sneaker. Ce fut le projet final pour ma classe de conception du produit, et il a fallu beaucoup de temps et beaucoup de dur labeur.
Instructions de DJI station terrestre pour voler un octocopter sur le pilote automatique

Instructions de DJI station terrestre pour voler un octocopter sur le pilote automatique

vous pouvez utiliser le système de contrôleur de vol DJI wookong, mis à jour pour une utilisation avec les coordonnées du point de cheminement GPS, pour piloter un hélico sur le mode de pilotage automatique. C'était un peu difficile pour moi de déchi
3D modélisés contrôleur pour Basic stamp Board of education

3D modélisés contrôleur pour Basic stamp Board of education

étape 1 était de modéliser le timbre base board of education, j'ai modélisé puis un contrôleur de base en moitiés, dans Solidworks. J'ai imprimé ces moitiés et vaporisées le contrôleur. J'ai inclus une vidéo du produit fini en action.
Pilote automatique hélice

Pilote automatique hélice

** Note : je n'ai pas eu le temps de remplir toutes les étapes encore, cependant, je vais finir après je suis fait avec le travail aujourd'hui, Désolé pour le post prématuré, je veux obtenir cela avant la date limite du projet **Bonjour à tous!Je sui
Mesurer et modéliser une thermistance

Mesurer et modéliser une thermistance

Une thermistance est un peu coûteux (et souvent inexactes) composants passifs pour mesurer la température. Cette instructable montre comment dériver les paramètres du modèle pour une thermistance, donné quelques points en utilisant seulement chaude (
Modéliser un Logo en 3D Blender

Modéliser un Logo en 3D Blender

Nous permettant de modéliser un logo dans un mélangeurÉtape 1: Lancez « Blender » et cliquez n'importe où dans la fenêtreCommencer à mixer et cliquez n'importe où à l'intérieur de la fenêtre de blender pour fermer l'écran de démarrage.Remarque:-l'écr
Comment modéliser une oreille ?

Comment modéliser une oreille ?

L'oreille peut être modélisé comme un bas relief.Vous commencez avec un dessin directement sur la terre battue. Il suffit de dessiner pour les grandes lignes.Après cela, vous pouvez commencer de modélisation.Détail du corps humain sont vraiment intér
Comment modéliser un trousseau de clés à l’aide de Google SketchUp pour l’impression 3D

Comment modéliser un trousseau de clés à l’aide de Google SketchUp pour l’impression 3D

/ * Style Definitions * / table. MsoNormalTable {mso-style-name: « Table Normal »; mso-tstyle-rowband-taille: 0; mso-tstyle-colband-taille: 0; mso-style-noshow:yes ; mso-style-parent: "";" mso-rembourrage-alt: 0 à 5.4pt 0 à 5.4pt ; mso-para
Laitue pour la vie - Arduino 101 basé automatisé contrôleur pour la culture hydroponique, aéroponique, culture aquaponique, etc..  Intel Curie

Laitue pour la vie - Arduino 101 basé automatisé contrôleur pour la culture hydroponique, aéroponique, culture aquaponique, etc.. Intel Curie

RÉSUMÉUn dispositif qui permet de contrôler jusqu'à 4 systèmes hydroponique/Aeroponic différents à la fois. Le dispositif de contrôler les composants du système et afficher la notification à un écran LCD et permettent à l'utilisateur de personnaliser
Guide complet pour construire votre premier avion Foamboard RC

Guide complet pour construire votre premier avion Foamboard RC

La troisième vidéo que j'ai de l'avion était une très vieille vidéo que j'ai pris avec mon appareil photo vraiment mauvais. Mon nouvel appareil photo est livré par la poste dès que je ferai une meilleure vidéo de la mouche de l'avion. Aussi les instr
Comment modéliser un Assembly de base à l’aide de Solidworks

Comment modéliser un Assembly de base à l’aide de Solidworks

nouveau pour SolidWorks ? C'est pas un problème!But :Ces instructions sont destinées à quelqu'un de nouveau à l'utilisation de SolidWorks, et qui dispose de compétences informatiques de base un peu. Une connaissance de base des dimensions seront égal
Comment faire une hélice à pas cher et facile en 1 minute (modèle bateaux/avions etc)

Comment faire une hélice à pas cher et facile en 1 minute (modèle bateaux/avions etc)

ne pouvait pas se permettre d'acheter des hélices x 30 pour ma classe de science donc je suis venu avec une alternative rapide et bon marchée qui en fait avéré fonctionne étonnamment bien et semble assez cool.Testé sur une centaine modèle bateaux et