[uBasic] USB-Skript mit Voreinstellung auf MF und unendlich gesucht

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

Re: USB-Skript mit Voreinstellung auf MF und unendlich gesuc

Beitragvon rudi » 08.11.2010, 19:26

Hallo Blaumeise,

das wird nicht möglich sein, da SD nur wirklich eingestellte Werte im MF-Modus anzeigt. Gewünschte und wirklich einstellbare Werte unterscheiden sich im Meterbereich meist erheblich.
Zum Nachweis kannst du dir den eingestellten Wert ausgeben lassen. Füge in denem Skript vor der Zeile 25 diese drei Zeilen ein.
Syntax: [ Download ] [ Verstecken ]
Benutze uBasic Syntax Highlighting
sleep 500
get_focus G
print "eingestellt=",G/1000,"Meter"
Erstellt in 0.007 Sekunden, mit GeSHi 1.0.8.9


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

Re: USB-Skript mit Voreinstellung auf MF und unendlich gesuc

Beitragvon Blaumeise » 09.11.2010, 13:00

Hallo Rudi!
...SD nur wirklich eingestellte Werte im MF-Modus anzeigt

Das ist der Punkt!
Die Umschaltung in den MF-Modus mittels Skript funktioniert nicht bei allen Entfernungseinstellungen (meine Erfahrung).

Beispiel 1: Einstellung auf 30m: Anzeige SD= inf ; "Fokus = 30 Meter" ; "eingestellt = 65 Meter"
Beispiel 2: Einstellung auf 40m: Anzeige SD = .329 ; "Fokus = 40 Meter" ; "eingestellt = 0 Meter"
Siehe das Ergebins: "eingestellt 65 Meter" bzw. "eingestellt 0 Meter"
.329= realer Abstand zum Motiv
Skriptausschnitt:
print "Fokus auf 30 Meter"
set_focus 30000
sleep 500
get_focus E
print "eingestellt=",E/1000,"Meter"
print"Fertig"


"set_fokus 40000" bei 40 Meter Einstellung
Gruß Blaumeise

-- 09.11.2010, 13:10 --

Zum 2. Beispiel:
Hier wird der Fokus nicht von der vorherigen manuellen Einschaltung akzeptiert.
Aus diesem Grund wird der wirkliche durch den Autofokus ermittelte Wert (SD-Wert) angezeigt.

Blaumeise
:)
IXUS 80 IS Version 101A CHDK 1.1.0-DE
Blaumeise
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 41
Registriert: 02.01.2009, 16:11
Kamera(s): Ixus 80

Re: USB-Skript mit Voreinstellung auf MF und unendlich gesuc

Beitragvon rudi » 11.11.2010, 20:56

Hallo Blaumeise,

get_focus und SD haben immer die gleichen Werte. Das ist soweit richtig.

Der Befehl set_focus 40000 sollte natürlich auch INF liefern, da hast du Recht.

Liefern 30m immer INF und 40m immer SD egal welcher Fokuswert (z.B. 0.5m, 2m, INF) vorher eingestellt war?

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

Re: USB-Skript mit Voreinstellung auf MF und unendlich gesuc

Beitragvon Blaumeise » 12.11.2010, 14:17

Hallo Rudi!
Liefern 30m immer INF und 40m immer SD egal welcher Fokuswert

Ja!
Ausnahme: Nach dem Einschalten der Kamera wird immer ein SD-Wert von ~ 4,30m angezeigt.
Dieser Wert wird noch beim 1. Start des Skripts angezeigt.

Bei einer Einstellung von 2m, bzw. 0,5m wird ein SD von ~1,97m, bzw. 0,500 angezeigt. Dto.als "eingestellt" wird jeweils 1m (Rundung) angezeigt.
Je näher das Motiv zur Kamera steht, je genauer wird SD.

Versuche habe ich mit unten stehendem Skript und wechselnden Festwerten gemacht

Gruß Blaumeise
:)
Dateianhänge
Fix-30m.bas
(294 Bytes) 321-mal heruntergeladen
IXUS 80 IS Version 101A CHDK 1.1.0-DE
Blaumeise
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 41
Registriert: 02.01.2009, 16:11
Kamera(s): Ixus 80

Re: USB-Skript mit Voreinstellung auf MF und unendlich gesuc

Beitragvon Blaumeise » 20.11.2010, 13:38

Hallo!
ich habe mal "Gehirnschmalz gekocht"
Und das ist heraus gekommen, dabei habe ich Ideen von gehtnix und rudi mit übernommen.
Syntax: [ Download ] [ Verstecken ]
Benutze uBasic Syntax Highlighting
rem manueller-variabler Fokus 1
@title MF1-Vario (USB)
@param b Start in Meter
@default b 30
m=0
E=b*1000

set_focus E
set_aflock 1

if E > 32000 then end

gosub "klick"

sleep 500


get_focus G
print "Fokus =",E/1000,"Meter"
print "eingestellt=",G/1000,"Meter"
print "Fertig !"

:start
    a=0
    do
        a = get_usb_power
    until a>0
    shoot
goto "start"

:klick
    if m=0 then shoot
    m=m+1
    return

cls
end
Erstellt in 0.007 Sekunden, mit GeSHi 1.0.8.9

Jetzt funktioniert nach dem Starten des Skripts auch die Einstellung auf die gewünschte Entfernung.
Beachte. Die Begrenzung auf 32m gilt für (meine?) Ixus 80. Evtl auch für andere Canons

Eine Frage habe ich dennoch an die Experten: Bei der Einstellung auf 32m werden jeweils bei SD(weiteste Distanz),NL(nahester Distanz) und FL immer "inf" angezeigt. Ist das OK?
Ich Habe zumindest auch im Buch keine Erklärung gefunden.

Viele Grüße Blaumeise
:)
IXUS 80 IS Version 101A CHDK 1.1.0-DE
Blaumeise
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 41
Registriert: 02.01.2009, 16:11
Kamera(s): Ixus 80

Vorherige

Zurück zu Code-Ecke

Wer ist online?

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