felopaul

MaxPilote : Soft pour gérer vos soirées avec Maxim DL/FocusMax/Pinpoint/PHDGuiding

Messages recommandés

Salut,

je ne comprends pas que tu aies un acces un objet com de ccd inspector, qui d'apres son auteur n'en est pas pourvu ?

Le code ci dessous est moche, dangereux et inélégant, mais tu as les résultats de ccdi en intégralité.

Dim Sh
Set Sh = CreateObject("WScript.Shell")
Sh.exec "C:\Program Files\CCDWare\CCDInspector2\CCDInspector2.exe c:\m82.fit"
'Attention au délais qui doit laisse le temps de charger bien !
WScript.Sleep 500
Do Until Success = True
Success = Sh.AppActivate("CCDInspector 2.5.3")
WScript.Sleep 500
Loop
Sh.sendkeys "%"
Sh.sendkeys "{DOWN}"
Sh.sendkeys "{DOWN}"
Sh.sendkeys "{DOWN}"
Sh.sendkeys "~"

Set objHTML = CreateObject("htmlfile")
ClipboardText = objHTML.ParentWindow.ClipboardData.GetData("text")
MsgBox ClipboardText

Dim strComputer
Dim objWMIService
Dim colProcessList
Dim objProcess
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery ("SELECT * FROM Win32_Process WHERE Name = 'CCDInspector2.exe'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
Set objWMIService = nothing
Set colProcessList = Nothing
Set objProcess = Nothing


J'ai posé la question ici :
http://ccdware.infopop.cc/eve/forums/a/tpc/f/8381048882/m/4787063916?r=6027024916#6027024916

mais comme tous les ricains je le sens pas s'ouvrir au monde, alors que ce serait tellement facile de pondre la dernière mesure de ses données dans un fichier text ou la base de registre.

A+
Vincent

Partager ce message


Lien à poster
Partager sur d’autres sites

merci mais je n'ai pas la courbure , j'ai les mêmes données qu'en COM

Tu l'as toi ?

Laurent

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

merdasse non , j'ai les colonnes que je vois à l'écran.

MAIS quand je démarre le programme par le script , il reprend les colonnes par défaut.

Bref un pas avancé, deux reculés.


Au final, tiens, c'est curieux , je les aies maintenant.

j'ai modifié les colonnes, et il me les a gardées ce coup ci.

mais bon ce soft a l'air un peu mystérieux pour moi ...

tu peux de dire ou tu as eu la doc pour le com ? je cherche partout, rien à faire ...


Tu as contacté le mec toi ? via aip tu aurais plus de poids ?! surtout si tu parles de ton programme

A+
Vincent

[Ce message a été modifié par Vincent STEINMETZ (Édité le 27-04-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

Essaie ça :

tu ouvres le programme a la main

tu mets les colonnes a ta guise ( settings display columns )

tu fermes à la main

tu rouvres

tu as les colonnes qui restent

tu refermes

et tu relance mon script

et tu as tes données dans l'ordre


c'est peut etre pareil pour le com qui utilise ce que tu as à l'écran ?

A+
Vincent

[Ce message a été modifié par Vincent STEINMETZ (Édité le 27-04-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

Ok, Je teste.

Pour le COM, pas de doc , juste du "Debug" perso....

Partager ce message


Lien à poster
Partager sur d’autres sites

deja ton script marche bien ! cool
je vais essayé de faire un mix entre les deux.

Partager ce message


Lien à poster
Partager sur d’autres sites

Nickel !!

Ca marche , j'ai la courbure ! Bon je change mon soft (il y a un peu de taf)

Laurent

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

les scripts c'est franchement majeur, ça marche toujours et partout , en lançant plusieurs tu fait meme le multi thread

t'as de la moule , je te le dis, car avec les ricains c'est pas gagné . http://ccdware.infopop.cc/eve/forums/a/tpc/f/8381048882/m/4787063916
il bloque et fait la pub pour ccdautopilot.

tu retiens ma technique alors ?

ça te fout pas la trouille de balancer des appuis touches au petit bonheur la chance ?

tu peux verifier que tu as un copie valide avec les données, mais si une autre fenêtre a le focus , bonjour les degats ?!

j'ai deja un peu bossé sur l'extraction des données , fait gaffe à la différence entre l'espace et la tabulation , le format est bizzare.

Oublies pas ce que j'ai dit plus haut a propos des sécus, c'est une bonne fonction, et tu peux aussi d'ailleurs controler que ton obs a le net par des pings extérieurs, etc ...

J'ai essayé le C# et vu l'objet com (auto , c'est ça ? ) , mais j'arrive pas du tout à faire quoique ce soit. est ce que c'est utilisable dans un script vbs ton truc ?

Sinon de ton coté , tu peux laisser cette tache externe, lancer mon script ( amélioré avec gestions des erreurs ) et récupérer les infos dans un fichier, je vais le faire pour pour nous je pense.

Attention aussi au point et à la virgule si tu as une version us et une française.

A+
Vincent

[Ce message a été modifié par Vincent STEINMETZ (Édité le 27-04-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

résultat des courses, toujours aussi laid, mais bon je suis amateur en tout et pro en rien

ça ouvre toujours un unique fichier , m82.fit sur la racine de c:

ça tient compte du séparateur décimal . ou , par des moyens détournés , mais on n'est plus à ça près !

prochaine étape, lire le fichier à ouvrir , et mettre les mesures dans le registre pour le rendre dispo facilement à mes autres programmes.

le newton est assez stable, mais pour les lunettes en feraille ça peut etre super :

je coupe la réponse en deux, les entetes puis les mesures, et ensuite je mamaille pour virer les tab et les espaces et avoir des valeurs numériqes à la fin celui la choppe , curvature, fwhm , aspect et background , une utilisé du background par exemple, c'est stopper le L et passer au Ha

Dim Rx(10)
Dim Entete(10)
Dim SeparateurDecimal
Dim Data(10)
Dim Part1 , PArt2 , I , J , K
Dim Sh
Set Sh = CreateObject("WScript.Shell")
Sh.exec "C:\Program Files\CCDWare\CCDInspector2\CCDInspector2.exe c:\m82.fit"


If IsNumeric ( "1.5" ) = True Then SeparateurDecimal = "."
If IsNumeric ( "1,5" ) = True Then SeparateurDecimal = ","
'msgbox "Séparateur décimal : " & SeparateurDecimal


'Test du paramètre de langue activé
'Attention au délais qui doit laisse le temps de charger bien !
WScript.Sleep 500
Do Until Success = True
Success = Sh.AppActivate("CCDInspector 2.5.3")
WScript.Sleep 1
Loop
Sh.sendkeys "%"
Sh.sendkeys "{DOWN}"
Sh.sendkeys "{DOWN}"
Sh.sendkeys "{DOWN}"
Sh.sendkeys "~"

Set objHTML = CreateObject("htmlfile")
ClipboardText = objHTML.ParentWindow.ClipboardData.GetData("text")


For I = 1 To len ( ClipboardText )
If Mid ( ClipboardText , I , 1 ) = Chr (13) Then
Part1 = left ( ClipboardText , I )
Part2 = right ( ClipboardText , Len (ClipboardText ) -I )
'MsgBox I
Exit For
End If
Next


J=1
temp = ""
For I = 1 To len ( Part1 )

Select Case Mid ( Part1 , I , 1 )
Case " "
'msgbox "espace"
Case " "
'msgbox "tabulation"
Case Else
'MsgBox Mid ( Part1 , I , 1 )
End Select


'mid( Part1 , I , 1 )
'If Mid ( Part1 , I , 1 ) = " " Then
'Part1 = left ( ClipboardText , I )
'Part2 = right ( ClipboardText , Len (ClipboardText ) -I )
'MsgBox "esp"
'Exit For
'End If
If Mid ( Part1 , I , 1 ) <> Chr(13) And Mid ( Part1 , I , 1 ) <> Chr(10) Then temp = temp & Mid ( Part1 , I , 1 )

If Mid ( Part1 , I , 1 ) = " " Then
Entete(J)=temp
J=J+1
'MsgBox temp
temp = ""
End If
Next

J=1
temp = ""
For I = 1 To len ( Part2 )

Select Case Mid ( Part2 , I , 1 )
Case " "
'msgbox "espace"
Case " "
'msgbox "tabulation"
Case Else
'MsgBox Mid ( Part1 , I , 1 )
End Select


'mid( Part1 , I , 1 )
'If Mid ( Part1 , I , 1 ) = " " Then
'Part1 = left ( ClipboardText , I )
'Part2 = right ( ClipboardText , Len (ClipboardText ) -I )
'MsgBox "esp"
'Exit For
'End If
If Mid ( Part2 , I , 1 ) <> Chr(13) And Mid ( Part2 , I , 1 ) <> Chr(10) Then temp = temp & Mid ( Part2 , I , 1 )

If Mid ( Part2 , I , 1 ) = " " Then
Data(J)=temp
J=J+1
'MsgBox temp
temp = ""
End If
Next

For I = 1 To 10
'MsgBox Entete (I) & "=" & Data(I)
Next

For I = 1 To 10
'Traitement de la curvature
'Traitement de la curvature
'Traitement de la curvature
If Left(Entete (I),4) ="Curv" Then

''MsgBox IsNumeric (Data(I))
temp = ""
For K = 1 To len(Data(I))
If Mid (Data(I),K,1) <>" " And Mid (Data(I),K,1)<> " " then
If Mid (Data(I),K,1) ="." Then
If SeparateurDecimal = "," Then temp = temp & ","
If SeparateurDecimal = "." Then temp = temp & "."
Else
temp = temp & Mid (Data(I),K,1)
End if
End If
Next
Data(I) = temp
''MsgBox IsNumeric (Data(I))
'MsgBox "-" & Data(I)& "-"
MsgBox "La courbure est de " & (Data(I)) & "%"
End if
next

For I = 1 To 10
'Traitement Aspect
'Traitement Aspect
'Traitement Aspect
If Left(Entete (I),4) ="Aspe" Then

''MsgBox IsNumeric (Data(I))
temp = ""
For K = 1 To len(Data(I))
If Mid (Data(I),K,1) <>" " And Mid (Data(I),K,1)<> " " then
If Mid (Data(I),K,1) ="." Then
If SeparateurDecimal = "," Then temp = temp & ","
If SeparateurDecimal = "." Then temp = temp & "."
Else
temp = temp & Mid (Data(I),K,1)
End if
End If
Next
Data(I) = temp
''MsgBox IsNumeric (Data(I))
'MsgBox "-" & Data(I)& "-"
MsgBox "L'aspect " & (Data(I)) & "%"
End If
Next

For I = 1 To 10
'Traitement Background
'Traitement Background
'Traitement Background
If Left(Entete (I),4) ="Back" Then

''MsgBox IsNumeric (Data(I))
temp = ""
For K = 1 To len(Data(I))
If Mid (Data(I),K,1) <>" " And Mid (Data(I),K,1)<> " " then
If Mid (Data(I),K,1) ="." Then
If SeparateurDecimal = "," Then temp = temp & ","
If SeparateurDecimal = "." Then temp = temp & "."
Else
temp = temp & Mid (Data(I),K,1)
End if
End If
Next
Data(I) = temp
''MsgBox IsNumeric (Data(I))
'MsgBox "-" & Data(I)& "-"
MsgBox "Le background est de " & (Data(I)) & "adu"
End if

'Traitement de FWHM
'Traitement de FWHM
'Traitement de FWHM
If Left(Entete (I),4) ="FWHM" Then

''MsgBox IsNumeric (Data(I))
temp = ""
For K = 1 To len(Data(I))
If Mid (Data(I),K,1) <>" " And Mid (Data(I),K,1)<> " " then
If Mid (Data(I),K,1) ="." Then
If SeparateurDecimal = "," Then temp = temp & ","
If SeparateurDecimal = "." Then temp = temp & "."
Else
temp = temp & Mid (Data(I),K,1)
End if
End If
Next
Data(I) = Left ( temp , Len(temp) -2 )
'MsgBox (Data(I))
''MsgBox IsNumeric (Data(I))
'MsgBox "-" & Data(I)& "-"
MsgBox "La FWHM est " & (Data(I)) & "pixels"
End if

Next


'MsgBox ClipboardText
'MsgBox Part1
'MsgBox PArt2

Dim strComputer
Dim objWMIService
Dim colProcessList
Dim objProcess
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery ("SELECT * FROM Win32_Process WHERE Name = 'CCDInspector2.exe'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
Set objWMIService = nothing
Set colProcessList = Nothing
Set objProcess = Nothing

[Ce message a été modifié par Vincent STEINMETZ (Édité le 28-04-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

tout cela c'est 5 lignes en c#

Je pilote tout en C#, pas besoin de script externe,

Mais ton script m'a permis de debuger un peu plus loing CCDI

Merci en tout cas !

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

oui, c'est bien mon site.

Il y a moins de trucs techniques ces derniers temps, car j'ai pas mal de taf avec les observatoires.

content que ça serve

A+
Vincent

[Ce message a été modifié par Vincent STEINMETZ (Édité le 28-04-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Version 1.00.14


J'ai rajouté (idée et proposition de typhoons, aide Vincent STEINMETZ) :
- gestion CCDinspector avec la courbure , peut faire une pose test pour verifier la MAP (meme temps que pinpoint) car des coups Focusmax merde.
- gestion de CCDsoft (=maxim dl)
- correction différents bugs et mise au point a mon ami jéjé et Frederic L.
- sauvegarde les données CCDi dans un fichier CSV

il faut demarrer CCDi avec l'option AutoOpen, pensez a mettre au minimum
nom (un 1er) puis FWHM, Aspect, courbure (ordre pas important)

[Ce message a été modifié par felopaul (Édité le 15-05-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

Heu... je n'aurais jamais pensé que cela serait possible de commander CCDsoft aussi rapidement. Dès que l'occasion se présente (bon en ce moment c'est quand même pourri depuis 1 mois par ici) je teste.
Et dès ce WE je teste à blanc.
Merci pour l'integration.

Partager ce message


Lien à poster
Partager sur d’autres sites

Sinon je viens d etre contacté par Vincent

il propose un moteur pp avec électronique et sonde de température pour 99$ soit 75 €, drivers ASCOM
http://www.usb-foc.us/

Partager ce message


Lien à poster
Partager sur d’autres sites
Version 1.00.16

J'ai rajouté :
- correction bug
- ajout "Park Dome/Scope avant serie Dark/Bias
-creation de sous repertoire automatique

et surtout MANUEL DISPONIBLE

[Ce message a été modifié par felopaul (Édité le 29-05-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

je viens de regarder le manuel ... très bien fait !
super boulot
Merci et bravo encore
Fred

Partager ce message


Lien à poster
Partager sur d’autres sites

Très beau boulot Laurent , surtout quand on sait que le plus chiant à faire c'est la doc !


A+
Seb.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut à tous, salut Laurent,

Je dois dire que c'est du très bon travail.
Un grand plaisir de partage avec mon ami lors des soirées à faire des essais et des corrections pour le débuguer...aujourd'hui c'est mon outil de travail et je ne peux plus m'en passer il va me simplifier la vie et je tiens ici à vraiment remercier mon AMI !!! Un développement à la hauteur de nos espérances en matière d'automatisation en poste fixe...avec un manuel très bien fait…..
BRAVOoooooo !!!
Amitié
Jéjé

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci a tous,

j'ai rajouté hier soir à la demande de jéjé, la création automatique de sous repertoire avec le nom de la cible (parametre au dessus du repertoire)

Mon ami Dominique m'a aussi corrigé mes nombreuses fautes dans le manuel.

Laurent
www.felopaul.com

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir Laurent,
je viens de télécharger ton logiciel.
J'ai par la même occasion mis à tous tout les logiciels comme indiqué sur ton site(maximdl, focusmax et ascom et phdguiding).
J'ai testé toutes les connexion mais il refuse de se connecter à PHD guiding, sans comprendre pourquoi.

Ma question: si je rentre les paramètres de guidage dans maxpilote, sans me connecter à PHD, cela guidera par maximdl automatiquement? (il pleut ce soir et je ne peut pas le vérifier)

Génial en tout cas, c'est un ccd autopilot en version simplifiée et bien plus simple d’utilisation.
un grand bravo!


Sébastien

Partager ce message


Lien à poster
Partager sur d’autres sites

Dans PHDGuiding actives dans "TOOLS" --> "ENABLE SERVER" pour que je puisse m'y connecter.

Désolé, il faut que j'en parle dans le manuel.

Laurent

[Ce message a été modifié par felopaul (Édité le 17-05-2012).]

Partager ce message


Lien à poster
Partager sur d’autres sites

Voila j'ai modifié le manuel d'utilisation pour y parler un peu de PDH.

Laurent

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant