Posts

Posts mit dem Label "Steuerung" werden angezeigt.

Motor Treiber für den Rover

Bild
Sicherlich hat jemand schon etwas geschrieben, dass die Ansteuern des Motor Shields vereinfacht. Dennoch möchte ich genau die Funktionsmöglichkeiten kennenlernen sowie auch den Schaltplan. Seit Jahren liegt mein Rover unbenutzt in der Kiste und das möchte ich ändern. Aber damit dieser Betrieben werden kann, wird ein Motor Treiber benötigt. In diesem Fall ist es ein Motor Shield für Arduino.   Arduino UNO / Duemilanove Motor Shield Externe Spannungsversorgung mit dem 9V oder einen zwei Zellen Lipo DAGU Rover 5 Chassis 4WD Antrieb Der Rover von DAGU hat vier Motoren die unabhängig voneinander betrieben werden können. Allerdings werden die Gummi Ketten eingesetzt womit die Motoren zur einen Seite immer gleichzeitig laufen müssen. Leider verfügt der verwendete Arduino nicht Ausreichend Pins für die Interrupt Funktion mit denen sich die vier Encoder vom Rover einlesen ließen. Die Umsetzung für das einlesen der Encoders würde besser mit einem Arduino MKR1000 fu

Bewegter Punkt (Arduino und TFT, Part 1)

Bild
Eigentlich sollte das Display für die Wiedergabe der Messwerte meiner Wetterstation wieder geben. Aber zu diesen Zeitpunkt war nicht klar, welche Möglichkeiten eigentlich mit dem TFT und vor allem mit dem ATMega328 mit den 16MHz machbar sind. Nur blanke Werte sind für meine Anforderung zu wenig und daher galt zunächst herauszufinden, wie schnell sich die Inhalte auf dem Display aktualisiert werden können. Punkt bewegen Das einfachste ist, man lässt einen Punkt von A nach B bewegen. Aber besser ist, wenn man die Bewegungsrichtung des Punktes selbst zur Laufzeit bestimmen kann. Daher wurden auf dem Breadboard, noch vier Taster an den Arduino Angeschlossen. Das sieht etwas wirr aus und was vielleicht nicht gleich zu erkennen ist, dass an den Button jeweils ein 4,7 Kilo Ohm Pull-Down Widerstand gesetzt sind. Das ist erforderlich, damit die Kontakte an dem Arduino keinen Zufälligen Zustand einnehmen. Denn selbst hohe Luftfeuchtigkeit, kann zu unerwünschten Effekten fü

Beleuchtung mit dem ATtiny 45 (Ausbessern)

Bild
In meinem vorigen Post habe ich bereits geschrieben, dass die vorhandenen LEDs für meine Beleuchtung nicht alle vollständig durchgesteuert werden können. Der Grund liegt an dem verwendeten Spannungsregler, der für den Betrieb ca. 100mA zur Verfügung stellt und kurzzeitig auch bis zu 150mA. Die Lichtausbeute war somit nur eingeschränkt möglich. Neu ist eine hintere LED Leiste mit fünf blauen und vier weißen LEDs. Dieser benötigt alleine bereits bis zu 200mA und da würde schon der einfache Spannungsregler nicht lange funktionieren. Nun mit dem etwas größer dimensionierten Spannungsregler sind solche Schwierigkeiten obsolet und am Programm muss nichts extra verändert werden, um Einsparungen für den Stromverbrauch vorzunehmen. Zudem können alle 16 LED RGBs (WS2812b) vollständig durchgeschaltet werden, ohne das die Spannung einbricht. Kommen wir zu den Änderungen. Wie bereits erwähnt verwende ich einen anderen Spannungsregler von STMicroelectronics. Die Bezeichnung lautet L780

Intervallaufnahme mit der Kamera ohne Interne Funktion

Bild
Die Funktion für eine Intervallaufnahme ist simpel, daher ist es für mich unverständlich, warum nicht zumindest die Systemkameras von der Nikon 1 Serie in ihren Modellen diese Option anbieten. Nun gut, dies war kein Kaufkriterium, wäre aber schön gewesen. Ich selbst verwende die Nikon 1 J3 (die J1 hat die Intervallaufnahme), allerdings sollte mein Beispiel auch für andere Kameras funktionieren. Grundsätzlich geht es darum einen Servo auf den Auslöser zu drücken. Für diesen Zweck habe ich aus Aluminium Eckschienen eine Vorrichtung gebaut. Wie schon am Bild zu erkennen ist, sollten zum Schutz die Alu Eckschienen nach der Verarbeitung abgerundet und ggf. mit Filzaufklebern beklebt werden. Die Materialliste: Alu Eckschienen ca. 20cm Filzaufkleber ein paar 3mm Schrauben und entsprechende Muttern Mini Servo mit ca. 10 Ncm Eine passende Schraube zur Kamera dass mit dem Stativ auch verschraubt werden kann. (siehe folgendes Bild) Zum Ansteuern wird der Netduino mit einem pas

Tippe die Lampe an

Bild
Letztes Jahr habe ich zu dem Sensor BMA020 bereits ein Code Beispiel für den Arduino gepostet . Nun dachte ich, da der so rum liegt, kann man den vielleicht auch mal für etwas verwenden. Also kam mir die Idee eine Lampe einzuschalten, in dem man gegen sie tippt oder leicht schlägt. Im späteren Verlauf stellte ich fest, dass einige Widerstände zu groß berechnet wurden. Die Abweichungen kommen durch die LED, die eigentlich für 12V ausgelegt sind und ich sie aber mit 9V betreibe. (Für den ATMega fehlt auf dem Bild der Quarz, PIN9 und PIN10) Zunächst skizzierte ich mir meine Schaltung und berechnete anhand des Schaltbildes die Widerstände. Dann sammelte ich meine benötigten Komponenten zusammen und steckte sie auf meinem Breadboard, um zu sehen ob meine Überlegung richtig ist. Versuchsaufbau der Schaltung Natürlich funktioniert die Schaltung nicht ohne einen Programmcode und daher musste ich mir zunächst etwas überlegen. Zum Beispiel wie ich aus den drei Achsen einen Wert

UART WiFi Server Client Module kann auch senden

Bild
Netduino Plus, Shield, WiFi Module und der Sensor Diesmal möchte ich ein Beispiel beschreiben, in dem nicht der Netduino der Empfänger ist, sondern der Sender, ohne dass auf die Serverfunktion verzichtet werden muss. Der Quellcode vom letzten Blog-Post wird an Server und Client seitig erweitert. Am Server (Netduino) Quellcode ist dies sogar recht simpel, da man an dieser Stelle nur vier weitere Zeilen Code hinzufügen muss: while ( true ) {       byte [] message = Encoding .UTF8.GetBytes("DateTime: " + DateTime.Now .ToString());       _SerialPort.Write(message, 0, message.Length);       Thread .Sleep(1000); } Relativ simpel fällt der Code für das Senden aus. In der “While”-Schleife ist nun zu sehen, dass ich die aktuelle Zeit als String wiedergebe und anschließend in ein Byte Array umwandle, um es für den Schreibvorgang vorzubereiten. Die “Write”-Methode selbst erledigt den Rest und gibt den Inhalt an das WiFi Modul weiter. Am Client jedoch ist ein wenig mehr A

UART WiFi Server Client Module am Netduino

Bild
Netduino Plus, Shield, WiFi Module und der Sensor MPU6050 Bereits letztes Jahr habe ich einen Post darüber geschrieben, wie dieses Modul eingerichtet wird und mit einem Arduino verwendet werden kann. Schon lange ist es daher überfällig, dass ich auch ein Bespiel mit dem Netduino schreibe. Aber bevor ich darüber schreiben konnte, musste ich so einige Versuche anstellen. Zuvor war das Ergebnis, dass über dem Webbrowser ein “Hello World!” auf dem Browser erschien. Diesmal kommt ein Beispiel auf dem Netduino,  das den Text im Debugger anzeigt. Leider ist es beim dem WiFi Modul nicht möglich mit der Socket Klasse zu arbeiten, so dass uns nur die serielle Verbindung bleibt. Und zugegeben, wie ich später herausfand, funktioniert dies besser und einfacher, als ich erwartet hatte. Mein neuer Netduino Shield für WiFi Modul und Sensor Zunächst die Verkabelung, wofür ich meinen Netduino Plus und einen neuen (eigens erstellten) Shield verwende, mit dem ich nun den Sensor und das WiFi