by AS playground.boxtec.ch/doku.php/tutorial Drehgeber mit RGB LED Drehgeber / Encoder

Ähnliche Dokumente
by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und analoge Eingabe = Teil 1 Hardware = Analog 1

Anzeige 1 - Teil 1. by AS. Anzeige 1 mit dem HT16K33, 2 x LED Matrix Anzeigen (8x8), 2 x I 2 C Bus = Teil 1 Hardware =

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und analoge Eingabe = Teil 1 Hardware = Analog 2

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus Isolator Isolator

System 72 by AS Einheitliche Halterungen für alle Module playground.boxtec.ch/doku.php/tutorials

Funk 1 - Teil 1. by AS. Funk 1 Funkübertragung im I 2 C Bus mit dem 8 Kanal Sende- und Empfangsmodul von ELV (FS20) = Teil 1 Hardware =

by AS playground.boxtec.ch/doku.php/tutorial Multitasking 3

by AS playground.boxtec.ch/doku.php/tutorial I2C - Extender

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und In Out 1 I2C In Out 1

Universal Netzteil für den I 2 C Bus. by AS. Universal Netzteil für den I 2 C Bus mit 3,3V, 5V, 12V und 1,3 bis 37V

Graphik 1 - Hardware. by AS. Graphik Display ( 128x64 ) mit dem KS0108, 2 Ports und 2 x I 2 C Verbindung

Graphik 3 Bilder. by AS. Graphik Display ( 128x64 ) mit dem KS0108, 2 Ports und 2 x I 2 C Verbindung

Board 2 - Teil 1. by AS. Prozessor Board 2 mit dem ATi 2313, 1 x Port, ISP und 2 x I 2 C Bus = Teil 1 Hardware =

by AS Prozessor Board 2 Attiny 2313, 1 x Ports, ISP und 2 x I 2 C Bus Board 2

Anzeige 1 - Teil 2. by AS. Anzeige 1 mit dem HT16K33, 2 x LED Matrix Anzeigen (8x8), 2 x I 2 C Bus = Teil 2 Software =

Graphik 2 Der Anfang. by AS. Graphik Display ( 128x64 ) mit dem KS0108, 2 Ports und 2 x I 2 C Verbindung

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und Out 1 I2C - Out 1

Anzeige 2 - Teil 1. by AS. Anzeige 2 mit dem HT16K33, 3 x LED Matrix Anzeigen (8x8), 2 x I 2 C Bus = Teil 1 Hardware =

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und Out 2 (16 Bit) I2C-Bus - Out 2

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und E-Paper Teil 1 - Hardware I 2 C Bus und E-Paper


by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und IR - Melder I2C - IR 1

by AS playground.boxtec.ch/doku.php/tutorial Attiny 261 mit Servo und verschiedenen Anschlüssen = Teil 1 Hardware = Servo 3

by AS playground.boxtec.ch/doku.php/tutorial Bus Modul I 2 C - Display 2 BM Display 2

SAM D21 J17A. by AS. ARM Controller - SAM D21 J17A ( 32 Bit Controller ) Software 1 Atmel Studio einrichten

Codeschloss 1 - Teil 1. by AS. Codeschloss 1 Matrixtastatur 3x4, ISP, Relais- Ausgang, I 2 C Bus oder NT Anschluss = Teil 1 Hardware =

by AS I 2 C Bus Modul, PCF 8574 Display 4x16, 4 Bit Modus I 2 C Bus- Display 1

+5V R13 2,46V IC3. Analog 2. I 2 C Bus und analoge Eingabe = Teil 2 Software (in) = by AS. playground.boxtec.ch/doku.

by AS playground.boxtec.ch/doku.php/tutorial Multitasking 4

tutorials.bt.ch.to AVR Studio 6 / Teil 1 by AS Eine kleine Einführung in das AVR Studio 6 ( Installation und erste Schritte )

Board 1 - Teil 2. by AS. Prozessor Board 1 mit dem AT 1284 P, 3 x Ports, ISP und 2 x I 2 C Bus = Teil 2 Der erste Start =

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und Schalter 1 Schalter 1

Sound Blizzard. Das Netzteil

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und Temperatur 2 I2C-Bus Temp 2

by AS playground.boxtec.ch/doku.php/tutorial I 2 C Bus und Temperatur 1 I2C-Bus Temp 1

LED - Leiste (rot und grün)

SAM D21 J17A. by AS. ARM Controller - SAM D21 J17A ( 32 Bit Controller ) Software 2 Das erste Programm

WIFFI-pump Bauanleitung rev1 stall.biz

Board 1 - Teil 1. by AS. Prozessor Board 1 mit dem AT 1284 P, 3 x Ports, ISP und 2 x I 2 C Bus = Teil 1 Hardware =

Bauanleitung DualBeam Antenne stall.biz

GREETBoard Stepper L6208. Version 1.0

by AS playground.boxtec.ch/doku.php/tutorial Board 1 und Servo 1 Servo 1

Bauanleitung der LED-Qube 5

Bauanleitung OLED-Shield 128x64 für WeMos mini

Eigenschaften: MoMo I - Motorregler Betriebsanleitung - v

by AS playground.boxtec.ch/doku.php/tutorial Ein Graphik Display edip128 am I 2 C Bus Teil 2 - Software I2C Bus + Graphik

MICRO LED-KONSTANT- STROMQUELLE 10mA

Datenblatt. für Volumenmessteil ZZZ-System. Versionen: systementwicklung. Reed-kontaktgeber: 1 Imp./L. oder 2 Imp./L

CU-R-CONTROL². Autor: Christian Ulrich. Datum: Version: Seite 1 von 16. AddOn IO-Taster Dokumentation zur Schaltung

I2C-006 DATASHEET I2C-006 V1.00: 1K EEPROM MODUL MIT TWI (I 2 C) SCHNITTSTELLE. Dokument NR.: I2C-006_Datasheet

Bedienungsanleitung 1.0

Bedienungsanleitung. UniMod-FX. Kingbus Universalmodul für Front mit Xenoneffekt. Symbolbild UniMod-D

CPT Mk# F Morse-Code-Zeichengenerator

LED VORSCHALTPLATINE 230 VAC

Bauanleitung Impulsgeber mit S0-Schnittstelle

Bauanleitung Impulsgeber mit S0-Schnittstelle

I2C-002 DATASHEET I2C-002 V1.00: I2C PORTEXPANDER MIT PCA8574. Dokument NR.: I2C-002_Datasheet

Bauanleitung der LED-Qube 5 V2

Atmega Interrupts. Rachid Abdallah Gruppe 3 Betreuer : Benjamin Bös

Solaranlagen-Set 40 W

Step-Down Wandler. Artikelname. Pollin Electronic GmbH Tel. (08403) Stand , web, #1all, hka

i / ..: .._I.,.,.>;..,!..e,.,.., ,.,/ \ _~..I.?,

LED Cube & Seat White PE

AB-001 DATASHEET AB-001 V1.00: PEGELKONVERTER RS232 ZU TTL. Dokument NR.: AB-001_Datasheet

Schaltnetzteil-Baustein SP 1500/01

Color Wheel with Motor for T-36

1. Allgemeine Hinweise. 1.1 Gewährleistung und Haftung. 2 Sicherheit 2.1 Bestimmungsgemäße Verwendung

Bauanleitung Unterputz Wohnraumsensor für Temperatur, Luftfeuchte und Lichtsensor für 1-Wire Bus

Bestellnummer Bezeichnung Tischmikrofon TKE, Ausführung mit zwei Tasten Tischmikrofon TKE, Ausführung mit einer Taste

Bedienungsanleitung. Rundumkennleuchte. Generation 2.0. Maßstab 1:16 1:12 1:8

Externer Card Reader 21in1 und USB 2.0 Hub 3-Port

IR NEC Empfänger mit 4x7 LED Anzeige (ATtiny2313)

Handbuch für das Schaltmodul P017B

Mikrocontrollerplatine vorbereiten

4-KANAL DIMMERPACK BEDIENUNGSANLEITUNG

Temperaturgesteuerte Lüfterregelung

Bedienungsanleitung. Mikrofon SM-99

Für den CTC-Mode kann demnach TCCR1A komplett auf 0 gesetzt werden, weil WGM11 und WGM10 in diesem Register liegen und beide laut Tabelle 0 sind:

Bedienungsanleitung CONTROL - STAR CS 100 / 230 VAC

Die Joypad s lassen sich wegen der Befestigungslöcher auf der Platine auch gut in Gehäuse integrieren.

SB-002 DATASHEET SB-002 V1.00: 8051 MIKROCONTROLLERBOARD MIT AT89C5131A-M OHNE NETZTEIL. Dokument NR.: SB-002_Datasheet

SB-001 DATASHEET SB-001 V1.00: 8051 MIKROCONTROLLERBOARD MIT AT89C5131A-M. Dokument NR.: SB-001_Datasheet

TNX Series. page 1-3 USER S MANUAL. TNX-10a TNX-12a TNX-15a

Outdoor LED Par 9 x 3W

WebFiber 4000 Lichtleiter-Netzteil. Installations- und Gebrauchsanleitung

DMX-LED-DIMMER 4x 350/700mA

Externer Card Reader 21in1 USB 2.0 mit Speicherkartensafe

Eigenschaften: LD 14 Lauflichtdecoder Betriebsanleitung - v

Zubehördecoder Licht 32 (L32)

PT1000 Messwandler. Best.Nr Pollin Electronic GmbH Tel. (08403) Stand , web, #all, hka

Pollin Spiel I. Best.Nr Pollin Electronic GmbH Tel. (08403) ohne Batterien. Stand , inhouse, #1000, hka

Bedienungsanleitung. Home Dimmer

Bedienungsanleitung LED-Arbeitslicht mit Bogenhaken Art.-Nr.:

1,4,5,6-Kanal-Auto-Verstärker

1.0 Wichtige Sicherheitshinweise

1,4,5,6-Kanal-Auto-Verstärker

PULSECOUNTER Bauanleitung ver 02

Digitale - Einbau - Zeitschaltuhr

Transkript:

www.boxtec.ch by AS playground.boxtec.ch/doku.php/tutorial Drehgeber mit RGB LED Drehgeber / Encoder

Copyright Sofern nicht anders angegeben, stehen die Inhalte dieser Dokumentation unter einer Creative Commons - Namensnennung- NichtKommerziell-Weitergabe unter gleichen Bedingungen 3.0 DE Lizenz Sicherheitshinweise Lesen Sie diese Gebrauchsanleitung, bevor Sie diesen Bausatz in Betrieb nehmen und bewahren Sie diese an einem für alle Benutzer jederzeit zugänglichen Platz auf. Bei Schäden, die durch Nichtbe-achtung dieser Bedienungsanleitung verursacht werden, erlischt die Gewährleistung / Garantie. Für Folgeschäden übernehmen wir keine Haftung! Bei allen Geräten, die zu ihrem Betrieb eine elektrische Spannung benötigen, müssen die gültigen VDE-Vorschriften beachtet werden. Besonders relevant sind für diesen Bausatz die VDE-Richtlinien VDE 0100, VDE 0550/0551, VDE 0700, VDE 0711 und VDE 0860. Bitte beachten Sie auch nachfolgende Sicherheitshinweise: Nehmen Sie diesen Bausatz nur dann in Betrieb, wenn er zuvor berührungssicher in ein Gehäuse eingebaut wurde. Erst danach darf dieser an eine Spannungsversorgung angeschlossen werden. Lassen Sie Geräte, die mit einer Versorgungsspannung größer als 24 V- betrieben werden, nur durch eine fachkundige Person anschließen. In Schulen, Ausbildungseinrichtungen, Hobby- und Selbsthilfewerkstätten ist das Betreiben die-ser Baugruppe durch geschultes Personal verantwortlich zu überwachen. In einer Umgebung in der brennbare Gase, Dämpfe oder Stäube vorhanden sind oder vorhanden sein können, darf diese Baugruppe nicht betrieben werden. Im Falle eine Reparatur dieser Baugruppe, dürfen nur Original-Ersatzteile verwendet werden! Die Verwendung abweichender Ersatzteile kann zu ernsthaften Sach- und Personenschäden führen. Eine Reparatur des Gerätes darf nur von fachkundigen Personen durchgeführt werden. Spannungsführende Teile an dieser Baugruppe dürfen nur dann berührt werden (gilt auch für Werkzeuge, Messinstrumente o.ä.), wenn sichergestellt ist, dass die Baugruppe von der Versorgungsspannung getrennt wurde und elektrische Ladungen, die in den in der Baugruppe befindlichen Bauteilen gespeichert sind, vorher entladen wurden. Sind Messungen bei geöffnetem Gehäuse unumgänglich, muss ein Trenntrafo zur Spannungsversorgung verwendet werden Spannungsführende Kabel oder Leitungen, mit denen die Baugruppe verbunden ist, müssen immer auf Isolationsfehler oder Bruchstellen kontrolliert werden. Bei einem Fehler muss das Gerät unverzüglich ausser Betrieb genommen werden, bis die defekte Leitung ausgewechselt worden ist. Es ist auf die genaue Einhaltung der genannten Kenndaten der Baugruppe und der in der Baugrup-pe verwendeten Bauteile zu achten. Gehen diese aus der beiliegenden Beschreibung nicht hervor, so ist eine fachkundige Person hinzuzuziehen Bestimmungsgemäße Verwendung Auf keinen Fall darf 230 V~ Netzspannung angeschlossen werden. Es besteht dann Lebensgefahr! Dieser Bausatz ist nur zum Einsatz unter Lern- und Laborbedingungen konzipiert worden. Er ist nicht geeignet, reale Steuerungsaufgaben jeglicher Art zu übernehmen. Ein anderer Einsatz als angegeben ist nicht zulässig! Der Bausatz ist nur für den Gebrauch in trockenen und sauberen Räumen bestimmt. Wird dieser Bausatz nicht bestimmungsgemäß eingesetzt kann er beschädigt werden, was mit Gefahren, wie z.b. Kurzschluss, Brand, elektrischer Schlag etc. verbunden ist. Der Bausatz darf nicht geändert bzw. umgebaut werden! Für alle Personen- und Sachschäden, die aus nicht bestimmungsgemäßer Verwendung entstehen, ist nicht der Hersteller, sondern der Betreiber verantwortlich. Bitte beachten Sie, dass Bedien- und /oder Anschlussfehler außerhalb unseres Einflussbereiches liegen. Verständlicherweise können wir für Schäden, die daraus entstehen, keinerlei Haftung übernehmen. Der Autor dieses Tutorials übernimmt keine Haftung für Schäden. Die Nutzung der Hard- und Software erfolgt auf eigenes Risiko. BT Drehgeber / Encoder 2

Drehgeber / Encoder Für die Bedienung an meinem Prozessor verwende ich einen Rotary Encoder - Illuminated (RGB) ( So steht die Bezeichnung beim Verkäufer ) Einen genauen Typ oder Hersteller ist mir nicht bekannt. Nach der Schrift im Datenblatt, kommt er aus China. Drehkodierer (Rotary Encoders) sind ähnlich im Einsatz wie Potentiometer, im Unterschied zu Potentiometern aber arbeiten die Encoder mit voller Drehung und ohne Beschränkung. Die Ausgabe erfolgt jedoch in Gray Codes welche Ausschluss über das Ausmass und die Richtung der Drehung geben können. Dieser Encoder ist speziell cool wegen der integrierten RGB LED (gemeinsame Anode). Ebenso verfügt der Encoder über einen Druckschalter. (Angaben des Verkäufers Boxtec) Encoder mit RGB LED auf P98 und Wannenstecker Funktionen: Schalter Weg: 0.5mm Durchmesser Achse: 6.0mm Achsen Länge: 18mm 90 Montage RGB LED Druckschalter Die Belegung des Wannensteckers auf der Platine P98 habe ich noch mal extra dargestellt. Es können auch andere Typen angeschlossen werden. Dazu muss im Programm die Angabe der Pins und Ports geändert werden. Die genaue Funktion eines Encoders ist im Netz auf diesen Seiten dargestellt. Belegung Wannenstecker 1 Encoder B 6 LED 3 2 Encoder A 7 LED 2 3 LED Rot 8 Taster 4 LED Grün 9 ( Masse ) 5 LED Blau 10 Vcc ( +5V ) ( Ansicht von oben) https://www.mikrocontroller.net/articles/drehgeber BT Drehgeber / Encoder 3

B C A Grün Taster Blau Vcc +5V Drehgeber / Encoder 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 Wannenstecker 2x5 +5V C5 Wannenstecker 2x5 C4 C3 C1 R11 R12 R10 R1 R2 R3 L1 L2 L3 C6 C2 R9 R8 R4 R7 Wannenstecker 2x5 Encoder Rot 1 2 3 4 5 6 7 8 9 10 R6 SCL SDA +5V +5V +12V INT R5 Schaltbild P98 Encoder Bauteile: L1 L3 - LED, 3 oder 5mm, 20 ma 1 x Platine ca. 72 x 42 mm (P98) R1 R3 - Widerstand 220 Ohm 3 x Wannenstecker 2x5 (Port, I 2 C) R4 R7 - Widerstand 10 kohm R8 - Widerstand 10 kohm R9 - Widerstand 220 Ohm R10 - Widerstand 180 Ohm (Rot) R11 - Widerstand 100 Ohm (Grün) R12 - Widerstand 100 Ohm (Blau) C1, C2 Kondensator 100 nf C3, C4 - Kondensator 10 nf C5, C6 - Elko 100/16 Encoder mit LED RGB Halterung - 2 teilig Im Datenblatt des Herstellers sind die Daten für die internen LED angegeben. Die erforderlichen Widerstände muss man sich dann ausrechnen. Wird ein anderer Encoder verwendet sind die Widerstände entsprechend anzupassen. Der Taster im Encoder liegt ebenfalls auf Vcc +5V. BT Drehgeber / Encoder 4

Bestückungsseite P98 Encoder mit Aufdruck Leiterzugseite P98 Encoder Als Beispiel habe ich wieder ein Programm geschrieben. Es nutzt die Auswertung von Peter Dannegger. Den Timer habe ichanders eingesetzt. Als Auswertung schalte ich die LEDs im Encoder einzeln oder zusammen. Die Auswertung kann man jederzeit seinem eigenen Programm anpassen, z.b. als Einstellung, Bedienung eines Menüs oder als Einknopfbedienung. Die Funktion kann man aus den Kommentarzeilen entnehmen. BT Drehgeber / Encoder 5

// ATB_Enc_Prg_1.c * Created: 10.12.2016 21:51:28 Author : AS // Auswertung Drehgeber Peter Dannegger // ATmega 1284p auf Board 1, 16 MHz, Drehgeber auf P98 auf Port A, NT2, #define F_CPU 16000000 #include "avr/io.h" #include <avr/interrupt.h> int8_t dreh = 8; int8_t val = 0; // CPU clock in Hz // Angabe der max Stellungen // Startwert der Drehung #define PHASE_A (PINA & 1<<PA0) // Eingang Encoder A P98 #define PHASE_B (PINA & 1<<PA1) // Eingang Encoder B P98 volatile int8_t enc_delta; // -128... 127 static int8_t last; void encode_init( void ) int8_t new; new = 0; if( PHASE_A ) new = 3; if( PHASE_B ) new ^= 1; last = new; enc_delta = 0; // convert gray to binary // power on state ISR( TIMER0_COMPA_vect ) // 1ms for manual movement int8_t new, diff; new = 0; if( PHASE_A ) new = 3; if( PHASE_B ) new ^= 1; // convert gray to binary diff = last - new; // difference last - new if( diff & 1 ) // bit 0 = value (1) last = new; // store new as next last enc_delta += (diff & 2) - 1; // bit 1 = direction (+/-) int8_t encode_read1( void ) int8_t val; cli(); val = enc_delta; enc_delta = 0; sei(); return val; int8_t encode_read2( void ) int8_t val; cli(); // einzel Schritt Encoder // zwei Schritt Encoder BT Drehgeber / Encoder 6

val = enc_delta; enc_delta = val & 1; sei(); return val >> 1; int8_t encode_read4( void ) int8_t val; cli(); val = enc_delta; enc_delta = val & 3; sei(); return val >> 2; void timer_init() TCCR0A = (1<<WGM01); TCCR0B = (1<<CS01) (1<<CS00); OCR0A = 249; TIMSK0 =(1<<OCIE0A); // vier Schritt Encoder // Timer 1ms int main( void ) // Hauptschleife timer_init(); DDRA = 0b11111100 ; // LED auf Ausgang PORTA = 0b01111100; // LED auf aus bei 1 encode_init(); sei(); while(1) val += encode_read4(); // Auswahl 1,2 oder 4 Schritt Encoder if (val>dreh) // Begrenzung oben val=0; if (val<0) // Begrenzung unten val=dreh; // Beginn Auswertung if (val==1) // LED blau PORTA &= ~(1<<PA4); // LED Blau ein else PORTA = (1<<PA4); // LED Blau aus if (val==2) // LED grün PORTA &= ~(1<<PA3); // LED grün ein BT Drehgeber / Encoder 7

else PORTA = (1<<PA3); if (val==3) PORTA &= ~(1<<PA2); else PORTA = (1<<PA2); if (val==5) PORTA &= ~(1<<PA3); PORTA &= ~(1<<PA4); if (val==6) PORTA &= ~(1<<PA2); PORTA &= ~(1<<PA4); if (val==7) PORTA &= ~(1<<PA2); PORTA &= ~(1<<PA3); if (val==8) PORTA &= ~(1<<PA2); PORTA &= ~(1<<PA3); PORTA &= ~(1<<PA4); // LED grün aus // LED rot // LED rot ein // LED rot aus // LED grün ein // LED blau ein // LED rot ein // LED blau ein // LED rot ein // LED grün ein // LED rot ein // LED grün ein // LED blau ein Es wurden von Peter 3 verschiedene Encoder vorgesehen. Die Auswahl kann durch val += encode_read4(); erfolgen. Dazu einfach die 4 in 1 oder 2 austauschen. Dabei muss die Funktion des Encoders getestet werden. Einige Teile des Textes wurden zur besseren Übersicht farblich gestaltet. Die Nutzung erfolgt auf eigenes Risiko. Ich wünsche viel Spaß beim Bauen und programmieren. Achim myroboter@web.de BT Drehgeber / Encoder 8