// Programm zur Ansteuerung eines Servomotors mit dem Controller "Controllino MAXI Automation" // 2 Betriebsarten möglich: Schrittbetrieb oder Automatik //---------------------Bibliotheken------------------------------------------------------------------------------------------------- #include // Controllino-Bibliothek #include // Bibliothek zum Ansteuern des LCD-Shields #include // Bibliothek zum Ansteuern des Servomotors //---------------------Variablen und Konstanten------------------------------------------------------------------------------------- int LED1 = CONTROLLINO_D7; // LED rot int LED2 = CONTROLLINO_D6; // LED gelb int LED3 = CONTROLLINO_D5; // LED grün int Taster0 = CONTROLLINO_DI0; // Taster DI0 int Taster1 = CONTROLLINO_DI1; // Taster DI1 int Taster2 = CONTROLLINO_DI2; // Taster DI2 int Taster3 = CONTROLLINO_DI3; // Taster DI3 int Poti = CONTROLLINO_AI12; // Sollwertvorgabe Servomotor durch Poti int Opto = CONTROLLINO_AI13; // Istwertmessung Gabellichtschranke int servo = CONTROLLINO_D4; // Sollwert Servomotor int value; // erstellen der Variable value int MODE; // erstellen der Variable mode (Modus) int T0 = 0; // Variable zum Lesen des Status des Taster0 int T1 = 0; // Variable zum Lesen des Status des Taster1 int T2 = 0; // Variable zum Lesen des Status des Taster2 int T3 = 0; // Variable zum Lesen des Status des Taster3 const int serv = 0; //---------------------Initialisierung---------------------------------------------------------------------------------------------- // Initialisierung der LC-Bibliothek mit Angabe der Pins vom Controllino MAXI Automation LiquidCrystal lcd(1 , 0, 53, 51, 50, 52); // Objekt servo1 erstellen Servo servo1; void setup() { pinMode(LED1, OUTPUT); // LED1 als Output pinMode(LED2, OUTPUT); // LED2 als Output pinMode(LED3, OUTPUT); // LED3 als Output pinMode(Taster0, INPUT); // Taster0 als Input pinMode(Taster1, INPUT); // Taster1 als Input pinMode(Taster2, INPUT); // Taster2 als Input pinMode(Taster3, INPUT); // Taster3 als Input servo1.attach(servo); // Zuweisung PWM Ausgang D4 (servo) zu Servo-Objekt lcd.begin(16, 2); // Angabe Zeilen und Spalten LCD lcd.setCursor(0, 0); // setze Cursor zum nullten Zeichen in Zeile 0 } //====================== Hauptprogramm ========================================================== void loop() { //-------------------- Unterprogramm 1 -------------------------------------------------------- while (MODE == 1) { } //-------------------- Unterprogramm 2 -------------------------------------------------------- while (MODE == 2) { } }