- Skapa MATLAB grafiskt användargränssnitt för styrning av likströmsmotor
- MATLAB-kod för styrning av likströmsmotor med Arduino
- Material krävs
- Kretsschema
- Styrande likströmsmotor med MATLAB
I denna handledning visar vi dig hur du styr DC-motor med MATLB och Arduino. Om du är ny med MATLAB rekommenderas det att komma igång med ett enkelt LED-blinkningsprogram med MATLAB.
Skapa MATLAB grafiskt användargränssnitt för styrning av likströmsmotor
Efter att ha slutfört installationen med Arduino för MATLAB måste vi bygga GUI (grafiskt användargränssnitt) för att styra likströmsmotorn. För att starta GUI, skriv kommandot nedan i kommandofönstret
guide
Ett popup-fönster öppnas och välj sedan nytt tomt GUI som visas i bilden nedan.
Nu väljer tre tryckknappar för medurs rotation, Moturs rotation och STOP, enligt nedan,
För att ändra storlek eller ändra form på knappen, klicka bara på den så kommer du att kunna dra hörnen på knappen. Genom att dubbelklicka på tryckknappen kan du ändra färg, sträng och tagg för just den knappen. Vi har anpassat tre knappar som visas i bilden nedan.
Du kan anpassa knapparna enligt ditt val. Nu när du sparar detta genereras en kod i MATLABs redigeringsfönster. För att koda din Arduino för att utföra alla uppgifter relaterade till ditt projekt måste du alltid redigera den genererade koden. Så nedan har vi redigerat MATLAB-koden.
MATLAB-kod för styrning av likströmsmotor med Arduino
Komplett MATLAB-kod, efter redigering av den för DC-motorstyrning, ges i slutet av detta projekt. Vidare inkluderar vi GUI-filen (.fig) och kodfilen (.m) här för nedladdning, med vilken du kan anpassa knapparna enligt dina behov. Nedan följer några justeringar vi gjorde för att rotera DC-motorn medurs, moturs och sluta använda tre tryckknappar.
Kopiera och klistra in koden nedan på rad nr. 74 för att se till att Arduino pratar med MATLAB varje gång du kör m-filen.
Rensa alla; global a; a = arduino ();
När du rullar ner ser du att det finns tre funktioner för varje knapp i GUI. Skriv nu koden i varje funktion enligt uppgiften du vill utföra med klick.
I funktion medurs knapp, kopiera och klistra in koden nedan precis före änden av funktionen för att rotera motorn medurs. Här ger vi HÖG vid stift 6 och LÅG vid stift 5 för att rotera motorn medurs.
global a; skrivDigitalPin (a, 'D5', 0); skrivDigitalPin (a, 'D6', 1); paus (0,5);
Nu i funktion moturs knapp klistrar du in koden nedan i slutet av funktionen för att rotera motorn moturs. Här ger vi HÖG vid stift 5 och LÅG vid stift 6 för att rotera motorn moturs.
global a; skrivDigitalPin (a, 'D5', 1); skrivDigitalPin (a, 'D6', 0); paus (0,5);
Slutligen i STOP- knappens funktion, klistra in koden nedan i slutet för att stoppa motorns rotation. Här ger vi LÅG vid både stift 5 och 6 för att stoppa motorn.
global a; skrivDigitalPin (a, 'D5', 0); skrivDigitalPin (a, 'D6', 0); paus (0,5);
Material krävs
- MATLAB installerad bärbar dator (preferens: R2016a eller högre versioner)
- Arduino UNO
- Likströmsmotor
- L293D- motorförare
Kretsschema
Styrande likströmsmotor med MATLAB
Efter installation av hårdvaran enligt kretsschemat, klicka bara på kör-knappen för att köra den redigerade koden i.m-filen
MATLAB kan ta några sekunder att svara, klicka inte på någon GUI-knapp förrän MATLAB visar BUSY-indikering, vilket du kan se längst ned till vänster på skärmen som visas nedan,
När allt är klart klickar du på medurs eller moturs för att rotera motorn. När du trycker på medsols strömflöde genom stift 6 till stift 5 och motorn kommer att rotera medurs medan motsols ström strömmar genom stift 5 till stift 6 och motorn roterar medurs kommer att rotera medurs. För att stoppa DC-motorns rotation, tryck på STOP-knappen. Samma metod kan användas för att styra servomotorn med MATLAB, vi behöver bara redigera koden i enlighet därmed. Du kan kolla in videon nedan för att förstå den kompletta processen för MATLAB DC-motorstyrning med Arduino.