wenn an Sense (Pin1 und Pin15 bei Multiwattgehaeuse L298 ) einen Widerstand gegen GND verbaust, kannst vor dem Widerstand nach dem Ohmschen Gesetz U=R*I die Stromaufnahme des Motors messen. z.B. Widerstand =0,1 Ohm, Stromaufnahme 2A, dann liegt vor dem Widerstand eine Spannung von 0,2V an. Diese Spannung kannst mittels eines OpAmps (z.B. LMC6062) verstaerken und ueber einen Komparator vergleichen. Wenn die Stromstaerke einen bestimmten Wert ueberschreitet, kannst davon ausgehen, dass der Motor "zwangsangehalten" (z.B. Anschlag) wird.
Posts by michaela1234
-
-
rename DMX-Multiplexer.hex.jpg to
DMX-Multiplexer.hexsollte funktionieren, ist nur recompiled.
-
Verdrahtung DE: siehe Anhang
-
bei Hendrik Hoelscher findest nen DMX-LED-Dimmer, der sollte das koennen, allerdings treibt der ULN2803 nur 0,5A pro Kanal, was fuer Dein Vorhaben wohl net ausreicht.
Um mehr Leistung rauszukriegen, wuerd ich 2 Porterweiterungen (74HC595) und 2 ULN 2803 an einen Outpin des AVR schalten und die LED-Baender auf 25cm kuerzen (dann duerfte jedes Band ca. 5W benoetigen, was bei 12V bissel weniger als 0,5A ausmacht).
Du benoetigst allerdings dann 2 weitere Outpins (CLK und Latch)
Die Software musst natuerlich anpassen.
Alternativ nach einem groesseren LED-Treiber suchen. -
wegen Schrittmotoren wuerd ich bei den Roboterjungs kucken.
Hier gibts ne recht gute Uebersicht.
Diese Site empfiehlt bipolare Schrittmotoren:
"Gewöhnlich werden Motoren heute bevorzugt bipolar angesteuert, weil diese Ansteuerung ein größeres Drehmoment erzeugt".
Um die 180° zu erreichen, wuerde ich den Motor mit einem Anschlag versehen, und "Sense" auswerten (Schaltung mit L297 und L298 ).
Der L298 treibt bis zu 2A.
Unter http://www.rn-wissen.de/index.php/Getr…ren_Ansteuerung findest noch weitere Ansteuerarten -
ist zwar ne bloede Idee:
miss ma an dem Entec zwischen Pin2 und Pin3 des DMX-In den Widerstand.
Wenn da 120 Ohm anliegen ist die Idee hinfaellig. Wenn der Widerstand aber endlos ist, liegts am Abschlusswiderstand (R7)im DE IF. -
Wenn die RGB LED eine gemeinsame Anode hat (ohne ULN2803): kuckst Du hier:
gemeinsame Anode an VCC (+)
die restlichen 3 Pins mit geeignetem Vorwiderstand an jeweils einen Pin von MC-OUT (PA0..PA7).
mit ULN2803:
gemeinsame Anode an VCC (+)
die restlichen 3 Pins mit geeignetem Vorwiderstand an jeweils einen Pin von den Treiber-Baustein(Pin10..Pin18).
restliche Beschaltung siehe auf Hendriks Seite.bei gemeinsamer Kathode:
gemeinsame Kathode an GND, die restlichen 3 Pins (jeweils auch mit Vorwiderstand) an MC-OUT.
wenn Du einen LED-Treiber Baustein verwenden willst, kannst Du den hier nehmen, der ULN2803 geht nur mit gemeinsamer AnodeI.Achtung (gilt nur fuer gemeinsame Kathode): Der MC kann pro Pin nur 20mA liefern, darueber ist der Pin tot, also vorher kucken, was die RGB-LED an Strom zieht.
-
Vielen Dank fuer Eure Anregungen. Ich werds wahrscheinlich so machen:
2x 4Amp Motortreiber mit L298
mit 0,1 Ohm Widerstand gegen Masse an Senseautomatische Motorendabschaltung (per Software von 0-5A Motorstrom einstellbar)
- von Sense ueber einen Rail2Rail OpAmp mit 10 oder 16-facher Verstaerkung (weiss ich noch net genau, was einfacher fuer den MC zu rechnen ist) zu einem 8-Bit ADC-Wandler zum MC.
Positionsbestimmung per Hallsensor:
Farbband ueber kubelgelagerte Umlenkrolle; die Umlenkrolle treibt ein federgefuehrtes Gummirad mit 4 Magneten. (auf ca. 5mm genau bei 7mm Durchmesser der Gummirolle). Hat den Vorteil, dass die Postionsbestimmung des Farbbandes linear ist).
Farbbandantrieb:
jeweils ein Motor mit 1/16 Untersetzung ueber Zahnraeder und -riemen
Farbrollendurchmesser zwischen 20 und 30mm.Teileliste fuer Motortreiber, OpAmp und ADC:
2x l298 2,10 4,20
2x Elko 4700 uF 35V 0,49 0,98
2 Motoren ( die derzeitigen sind von Pollin Johnson 30037) ca. 2,50 je Stueck
(ob die reichen, werden die Tests zeigen?.8x BYV 27/200 0,39 3,12
2x 0,1 Ohm 2-5W (CRA2512 R100E)SMD 0,1 Ohm 3W 0,39 0,78
2x 1uF Elko (SM 1,0/63RAD) 0,05 0,101x LMC6062N 2xOpAmp Rail2rail 1,85 1,85
2x 1kOhm 0,1% (MPR 1,00K) 0,19 0,38
2x 10kOhm 0,1% (MPR 10,0K) 0,19 0,381x ADC (ADC 0834 CCN) 8Bit AD Wandler 4 Kanal 2,15 2,15
Motorentstoerung (fuer 2 Motoren):
4x47nF (MKS-2 47N) 0,10 0,40
2x 100nF (MKS-2-5 100N) 0,07 0,142 Zahnraeder 12Z
2 Zahnraeder 48Z
2 Zahnriemen (gesamt ca. 24 EUR)+ 1Steuerplatine entweder auf Hendriks Transceiver oder DE Dimmer Basis wobei die DE-Dimmer-Basis besser ist, da hier schon ein LCD-Display implementiert ist.
( hab aber auch Hennes Transceiver mit LCD).gruss
wolf -
alla gut, da Du dich anscheinend in PonyProg verliebt hast....
ich meine mich zu erinnern, dass Du im Setup auf der Parallel Seite AVR ISP I/O auswaehlen musst.
Wenn Pony-Prog bei Anklicken des Button "Probe" dann einen MC erkennt, ist gut, wenn net, musst mit der Polarity rumspielen.
Hier meine ich, mich erinnern zu koennen, dass ich irgendwo einen Haken gesetzt hab, dann gings.
Pony Prog macht meiner Erfahrung nach aber nur bis 8MHz Clock mit, dann will das Teil nimmer, das aber nur am Rande.
Wenns bis morgen net hinkriegst, dann such ich ma mein Par-Kabel und test.Viel Spass
cu
wolf -
es wird auch unter win2000 net funktionieren.
http://www.pci-card.com/menu3.html
etwa in der Mitte steht:
Betriebssysteme mit direktem I/O-Portzugriff sind beispielsweise:
* CP/M, CP/M 86
* MS-DOS, Free-DOS, Dr.DOS
* Windows 2.x, 3.xx
* Windows 95 / 98 / 98SE / ME
* Linux, UnixBetriebssysteme ohne direkten I/O-Portzugriff sind beispielsweise:
* Windows NT
* Windows 2000
* Windows 200x Server
* Windows XP
* Windows Vista
* Windows 7und wenn der mc gelesesn wird und es kommen nur "FF"s, dann ist der mc entweder leer oder kann net gelesen werden.
-
ne saubloede Idee:
Kann es vielleicht sein, dass die Loetpunkte unter dem USBN fuer die Kabelbruecken zu arg abgefeilt wurden??
Mit Kaeltespray zieht sich das Material zusammen und Du hast keinen Kontakt mehr??cu
wolf -
hmm mit dem Par-Adapter hab ich immer Win98 verwendet, da 98 noch den vollen Hardwarezugriff auf den Par-port zugelassen hat, was m.W. spaetestens bei XP und folgende BS nicht mehr der Fall ist.
Und mit dem Ser-Adapter war ich leider erfolglos (auch unter Win98), der ist gleich in die Tonne gewandert.Baut euch den AVR von Klaus Leidinger, der geht auf jeden Fall. Zum Brennen nehm ich OSPII, das funktioniert wunderbar.
-
ein Bild hab ich schon gefunden:
http://upload.wikimedia.org/wikipedia/comm…22_Scroller.JPG
das sind 2 DC Motoren, ohne Lichtschranke an den Gels, vermutlich ueber Hallsensoren am linken Motor abgefragt.
Schaltplan fuer ne automatische Abschaltung der Motoren in Endstellung hab ich schon. (geht ueber Stromstaerkeanstieg)
Die Software dafuer ist einfach, DMX-In, ne Motorsteuerung re/li, Geschwindigkeit fuer Motor;
das alles hab ich schon, zwar fuer L293D H-Bridges, die werden mir vermutlich um die Ohren fliegen, aber dann gibts immer noch L298.
Dann noch ein Zaehler fuer die Hallsensor-Impulse mit Interrupt, wenn bestimmte Zaehlerzahl erreicht ist, dass der Motor stoppt.Das mit den IR-Lichtschranken ist mir zu unsicher, obwohl ich zum Testen noch ne gepulste (vermutlich ca. 7k) IR-Lichtschranke verbauen werd.
gruss
wolf -
hi stefan
danke fuer die Antwort, dann werd ichs halt ma mit 35mm Rollendurchmesser versuchen.
Der Hintergrund ist der, dass ich die Position der Folie mit nem Hallsensor und 4 Magneten auf der Motorantriebswelle feststellen will, dann hab ich alle ca. 3,4-3,9 mm ein Interrupt..
und das haett halt so schoen gepasst, mit den 220mm Folienlaenge. (ist mir im uebrigen auch aufgefallen, dass die Rolle diecker wird, aber da war der Thread schon erstellt war, shame)
Weisst Du in etwa, um wieviel dicker die Rolle wird, wenn alle Folienfarben draufgewickelt sind (und natuerlich , wieviel Farben das dann sind)?Danke und cu
wolf
-
da mir grad langweilig war:
wenn Du nur die DMX-Startadresse einstellen willst, ergaenze in der code..asm in der "DMX Lichtpult.rar" die folgenden Zeilen:
Die Routine fuer die Taster musst halt umschreiben, wenn Dir die Tasten, die an PB2..PB4 angeschlossen sind, net zusagen.Da der Code dann aber nimmer in den Attiny passt, musst ich ein paar weitere Zeilen umaendern, damits Platz gibt (der Dateianhang ist die komplete code.asm).
Ich hab den Code allerdings net getestet.HFGL
wolf
;***************Changes Beginn
; ldi TEMP,0x01 ;Load UART Bautrate Register with 0x01
; out UBRR,TEMP ;Load UART Bautrate Register with 0x01
; sbi UCR,2 ;Enable 9-Bit Mode;; rcall DISPLAY_AKTUAL
;nach den obigen Zeilen das einsetzen: (ist das Ende der Resetroutine)ldi temp,0x25
out EEAR,temp
sbi EECR,EERE
in temp,EEDR
mov r15, templdi ADD_TEMP,68
sts 0x60,ADD_TEMP ;D
ldi ADD_TEMP,77
sts 0x61,ADD_TEMP ;M
ldi ADD_TEMP,88
sts 0x62,ADD_TEMP ;X
ldi ADD_TEMP,45
sts 0x63,ADD_TEMP ;-
ldi ADD_TEMP,65
sts 0x64,ADD_TEMP ;A
ldi ADD_TEMP, 100
sts 0x65,ADD_TEMP ;d
ldi ADD_TEMP,114
sts 0x66,ADD_TEMP ;r
ldi ADD_TEMP,32
sts 0x66,ADD_TEMP ;:
sts 0x67,ADD_TEMP ;
sts 0x68,ADD_TEMP ;
sts 0x69,ADD_TEMP ;
rcall display_out
;sts 0x0080, r15;Button1=addtemp,2
;Button2=addtemp,3
;Button3=addtemp,4
;Button4=addtemp,5
;Button5=addtemp,6
;Button6=addtemp,7dmx_routine:
rcall DELAY_0
in add_temp, pinb
sbrs add_temp, 2 ;Taster an PB2 (Funktion DMX-Adresse +1)
rcall DMX_Plussbrs add_temp, 3 ;Taster an PB3 (Funktion: DMX-Adresse -1)
rcall DMX_Minussbrs add_temp, 4 ;Taster an PB4 (Funktion: Beenden und wenn DMX-Adresse geaendert, in eprom speichern)
rjmp reset1
rjmp dmx_routinereset1:
;lds add_temp, 0x0080
;cp add_temp, r15
cp temp, r15
breq mainWRITE_EEPROM_x25: ;SAVE_DMX
sbic EECR,1
rjmp WRITE_EEPROM_x25
ldi ADD_TEMP,0x25
out EEAR,ADD_TEMP
out EEDR,r15
sbi EECR,EEMWE
sbi EECR,EEWEsts 0x0080, r15
;hier gehts mit der MAIN-Routine weiter
MAIN: rcall DELAY_0
cbi PORTD,1 ;TxD -> Low ;Send Break
rcall DELAY_0
sbi PORTD,1 ;TxD -> High
rcall DELAY_1
ldi FADER_ADRESS,128
ldi ADD_TEMP,0x00 ;Send Startbyte
mov DMX_BYTE,ADD_TEMP
rcall SEND_DMX_BYTE
rcall DELAY_1
ldi ZH,0x00
ldi ZL,0x70
ldi FADER_ADRESS,0lds r15, 0x0080
tst r15
breq DMX_LOOP
wait_for_startadress:
dec r15
clr DMX_BYTE
rcall SEND_DMX_BYTE
tst r15
brne wait_for_startadress;***************Changes End
;ab hier gehts normal weiter:
;DMX_LOOP:
-
moin,
hat jemand zufaellig einen Rollenfarbwechsler im Equipment und koennte mir kurz den Durchmesser der Farbrollen messen?
Da Rainbow die Laenge einer Farbfolie mit 220mm angibt, (220/pi=70) muesste die Rolle entweder 17,5mm oder 35mm Durchmesser haben.Vielen Dank im voraus
cu
wolf -
hmm was fuer einen Programmieradapter hast, und mit was flashst den MC??
Die Fehlermeldung besagt, dass Dein Flashprogramm den MC net finden kann.wegen den Fuses kuck ma auf den Link, da steht drin, wie die Fuses mit PonyProg zu setzen sind.
Wenn einen anderes Flashprogramm hast, kannst Dir auch die Fuses hier berechnen lasssen.bei Aldi-Sued gibts im uebrigen naechste Woche 5m RGB-Leds fuer 50,- EUR
hfgl
wolf -
kuck, wievel Volt Deine LED vertraegt und wievel (milli)Ampere sie braucht, dann geh auf http://www.elektronik-kompendium.de/sites/bau/1109111.htm und lass dir den Vorwiderstand berechnen. LED Durchlassannung ist der Wert Deiner LED, bei "spaetere Betriebsspannung" traegst "5" ein, die mA entsprechend der Werte der LED (wenn den Betriebsstrom net weisst, trag 20 ein).
Den Widerstand loetest an den MINUS-Pol Deiner LED.
wenn net weisst, was die + und - Pins deiner LED sind, kuck hier: http://www.electronics2000.co.uk/pin-out/led.phpAuf der Transceiver-Platine sind unten rechts 2Pins ("+" und "Gnd"). Da sind 5V vorhanden.
Verbinde den PLUS-Pol der LED mit dem "+" Pin auf dem Transceiver und die andere Seite des Widerstandes, den vorher an die LED geloetet hast, mit einem Pin des Ausgangs (Output) des Transceivers.Ein Netzteil solltest schon haben, (zwischen 9 und 12Volt, der 7805 vertraegt bis 30V). Zum Testen geht aber auch ne 9V Blockbatterie (oder halt 6*1,5V)
Klemm die Batterie an die Pins AC1 und AC2 (Plus und Minus ist wurscht).
Dann solltest die LED mit DMX-Befehlen ansteuern koennen.HFGL
wolf
-
ich wuerd noch nen ULN2803 als Treiber-Baustein verbauen, dann hast pro Kanal 0,5A und max. 30V (also max. 120W), andernfalls 5V und wenn ein 2A Netzteil verbaust, halt max. 2/8A=250mA, entspricht 10W abzueglich Strom fuer den Transceiver.
-
.include "<deinProzessor>def.inc"
z,B.:
.include "m8515def.inc"entweder fehlt die Zeile, oder die Datei ist net vorhanden.
Die Datei kannst auch in das Verzeichnis kopieren, in dem der Quellcode steht.bei AVR-Studio sollte se in dem Verzeichnis stehen:
%Programme%\Atmel\AVR Tools\AvrAssembler\Appnotesim uebrigen waere eine Angabe des verwendeten Compilers recht hilfreich gewesen.
cu
wolf