get_usb_power => Zeiten und Abstände???

CHDK-Skripte, CHDK-Entwicklung, PC-Zusatzprogramme, Informationen für Tüftler

get_usb_power => Zeiten und Abstände???

Beitragvon spelli » 13.09.2012, 20:17

Hallo,

ich verwende das CHDK an einer G11 um diese fernzusteuern.
Die Fernsteuerung ist hierbei aber kein Taster o. ä., sondern ein ATmega8, der für definierte Zeiten einfach 5V auf den USB Eingang gibt.

Steuerung soll sein:
- Auslöser
- zoom in
- zoom out

Bei dem folgenden Script klappt das Auslösen perfekt. Leider habe ich Problem mit dem Zoom out! Entweder kann ich mit den Zeiten für das Aus und Ein-Einzoomen NUR EINZOOMEN, oder es wird ausgelöst...

Nun meine Frage, ob mir jmd. etwas zu den get_usb_power Zeiten und naja, Mindestabständen, sagen kann!?

Vielen Dank,
Christoph


Code: Alles auswählen
rem KAP Ctrl v1
rem 13.09.2012


rem EINSTELLBARE PARAMETER:
rem ------------------------------------------------

@title Kap Ctrl V1

@param r raw: 1 ein / 0 aus
@default r 0

@param b Blende
@default b 576

@param n ND-Filter: 1 ein / 2 aus
@default n 2

@param a Zoomin Zeit
@default a 500
@param b Zoomout Zeit
@default b 500


rem SETZEN VON PARAMETERN:
rem ------------------------------------------------

rem Betriebsmodus
set_record 1

rem RAW oder JPG
set_raw r

rem beste Auflösung
set_resolution u

rem beste Qualität
set_quality q

rem Blende einstellen (8)
set_av96_direct b

rem ND-Filter
set_nd_filter n

rem Focus
set_focus 65535
sleep 400

rem Modus Av
set_capture_mode modus_av

rem zoom auf Weitwinkel
set_zoom 0
sleep 200

rem blitz aus
while get_flash_mode<>2
click "right" sleep 100
wend


rem HAUPTPROGRAMM:
rem ================================================

while 1
 do
 rem /// get_usb_power wird in 10ms angegeben!
 c=get_usb_power
 until c>0

 rem /// größer 200 Milliekunden, dann ZOOM OUT
 if c>20 then gosub "zout"

 rem /// größer 100 Milliekunden, dann ZOOM IN
 if c>10 then gosub "zin"

 rem /// größer 0 Sekunden, dann SHOOT FOTO
 if c>0 then gosub "shoot"
 cls
wend
end


rem ROUTINEN:
rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:zin
 print "    ZOOM IN"
 press "zoom_in"
 sleep a
 release "zoom_in"
 c=0
return


:zout
 press "    ZOOM OUT"
 sleep b
 release "zoom_out"
 c=0
return


:shoot
 print "    FOTO"
 shoot
 c=0
return
spelli
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 18
Registriert: 27.10.2011, 19:01
Kamera(s): Powershot G11 v.1.00L

Re: get_usb_power => Zeiten und Abstände???

Beitragvon rudi » 14.09.2012, 08:27

Hallo spelli,

die Zeitabstände sind groß genug. Deine Routine zout drückt die Zoom-Taste aber nie, es sollte bestimmt so aussehen:
Code: Alles auswählen
:zout
 print "    ZOOM OUT"
 press "zoom_out"
 sleep b
 release "zoom_out"
 c=0
return

rudi
Benutzeravatar
rudi
CHDK-Spezialist
CHDK-Spezialist
 
Beiträge: 510
Registriert: 11.09.2009, 11:27
Kamera(s): A590IS_101B, SX260_100B

Re: get_usb_power => Zeiten und Abstände???

Beitragvon spelli » 14.09.2012, 13:53

Ja, natürlich!

Dankeschön...


Gibt es Erfahrungen, was die Zeitabstände angeht? - Die Funktionen selbst benötigen ja auch Zeit, oder kriegt das das CHDK hin?

Christoph
spelli
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 18
Registriert: 27.10.2011, 19:01
Kamera(s): Powershot G11 v.1.00L

Re: get_usb_power => Zeiten und Abstände???

Beitragvon rudi » 15.09.2012, 22:30

Hallo spelli,

frühere Versuche zeigten eine Abweichung bis zu 30ms bei der USB-Power Zeitmessung. Wenn der ATMEL Pulse von 50ms, 150ms, 250ms erzeugt sollte dein Raster von <100, 100..200, >200 gut passen. Du kannst dir deine Variable "c" auch in der Konsole anzeigen lassen. uBasic benötigt je Zeile 10ms, schau mal ins Handbuch.

Gruß rudi
Benutzeravatar
rudi
CHDK-Spezialist
CHDK-Spezialist
 
Beiträge: 510
Registriert: 11.09.2009, 11:27
Kamera(s): A590IS_101B, SX260_100B

Re: get_usb_power => Zeiten und Abstände???

Beitragvon spelli » 16.09.2012, 08:37

Dankeschön!
spelli
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 18
Registriert: 27.10.2011, 19:01
Kamera(s): Powershot G11 v.1.00L


Zurück zu Code-Ecke

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 14 Gäste