DLL POUR K8055 (VM110) UTILISATION SIMPLIFIÉE DE CETTE CARTE

julienmus Messages postés 51 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 13 février 2012 - 6 oct. 2009 à 19:31
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 - 19 mai 2012 à 18:19
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50645-dll-pour-k8055-vm110-utilisation-simplifiee-de-cette-carte

Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
19 mai 2012 à 18:19
oups j'avais pas vu les derniers messages, donc :
Pour tenebre83, ta question est comme ton speudo, ténébreuse lol, qu'elle est ton soucis ?
pour Eolpro, attention au temps de cycle de la carte ~10ms pour la VM11à et 5ms pour la VM140, donc si les top sur in1 sont trop rapide tu ne les verra pas ;) idem pour le capteur inductif ! de mémoire la moyenne est de 100 à 1000hz en commutation. donc à 2000tr/min sur le PIxD et nombre de top/tour (crénaux détecté) tu aura la fréquence de sortie du capteur, tout doit être inférieure à F=1/T soit 1/10ms = 1Khz.
cordialement
eolpro Messages postés 7 Date d'inscription vendredi 2 mai 2008 Statut Membre Dernière intervention 7 novembre 2010
7 nov. 2010 à 23:57
bonsoir,j'utilise l'entrée 1 digitale de la carte pour le counter avec un switch inductif (via optocoupleur à +- 2000 Tr/Min en calcul manuel )pour déterminer la vitesse de rotation d'un disque.j'aimerais pouvoir afficher la vitesse en tours/minutes "on line".Je devrais réagir sur les sortie digitales (1 et 2 ) afin de limiter la rotation du disque.Le projet est un générateur électrique.Merci de votre réponse
tenere83 Messages postés 9 Date d'inscription vendredi 20 août 2010 Statut Membre Dernière intervention 13 septembre 2010
13 sept. 2010 à 18:29
Bonjour,
J'ai deux cartes K8055 an //
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
7 avril 2010 à 07:34
sallut, je ne pense pas qu'utiliser ma dll arrange les choses puisqu'elle fait appel à l'original.
Je te conseil d'aller sur le site de velleman pour avoir des infos pointus sur les commandes USB. Regarde aussi les mises à jours.
++
tudessan Messages postés 1 Date d'inscription dimanche 4 avril 2010 Statut Membre Dernière intervention 7 avril 2010
7 avril 2010 à 00:18
Bonjour,

Je programme des scripts vb.net sur un système domotique Homeseer. Jusqu'à là pas de problème.

Ayant une carte K8055, je cherche à comprendre comment appeler des fonctions contenues dans K8055D.DLL à partir d'un de ces scripts et là je n'y arrive pas :-(

Je ne souhaite pas utiliser un plug-in car je voudrais appeler des fonctions bas niveau qui ne sont pas disponibles.
En outre, je voudrais comprendre comment ça marche au lieu d'utiliser tout court ...

De ma compréhension, Homeseer n'accepte que des DLL .net ce qui n'est pas le cas de K8055D.DLL si j'ai tout compris (unmanaged dll).

Mes questions :
1) Est-ce que test K8055.dll est une dll .net ?
Si oui, je vais commencer par essayer d'appeler des fonctions de cette dll depuis un script sous Homeseer.
2) Y a-t-il un autre moyen (plus simple) d'y parvenir que "d'encapsuler" k8055d.dll dans une autre dll .net?

Merci par avance pour ces précieux conseils
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
9 oct. 2009 à 18:02
Utilisation de la DLL (vous devez aussi avoir la DLL velleman dans sys32, comme avant) Pas besoin de comprendre le code de la DLL il est encapsulé pour ne pas avoir en s'en préocuper, tout ce qu'il y a savoir c'est ça :

Dans un nouveau projet, inclure la classe de la DLL ou la compiler et inclure la référence à votre projet,

puis dans le code 'utilisateur' l'instancier :
Dim MaCarte As New K8055

Pour se connecter à la carte : (quelque soit l'adresse et le nombre de cartes !)
MaCarte._Connection() ' retourne vrai ou faux donc possibilité d'écrire :
If MaCarte._Connection() Then 'si la dll trouve au moins une carte

Pour se déconnecter et fermer toutes les sorties :
MaCarte._Deconnection()

Possibilité d'avoir des infos sur le nombres total d'I/O via :
MaCarte._NbOutTor, MaCarte._NbInTor, MaCarte._NbOutAna ou encore MaCarte._NbInAna
Ce sont des integers donc .Tostring si besoin de l'afficher en texte.

Et enfin le plus important : Activer les sorties !
deux méthodes :
Bistable : MaCarte._SortieTor(0, i) 0=N°carte et i la sortie, si i=true alors cette fonction éteint la sortie, sinon elle l'allume.
Forçage : MaCarte._SortieTor(0, i, False) Idem mais impose à la sortie i son état.

Voila j'éspére que c'est plus clair et que tu y trouveras une simplification pour écrire tes futurs projets avec la k8055.
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
6 oct. 2009 à 20:34
spa grave essaye le ;)
julienmus Messages postés 51 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 13 février 2012
6 oct. 2009 à 19:31
domage j'ai plus de carte pour essayé
mais vue le code sa depasse de loin mes competence
Rejoignez-nous