Connexion    
 + Register
  • Main navigation
Connexion
Pseudo :

Mot de passe :

Remember me



Lost Password?

Register now!
En ligne
35 utilisateur(s) en ligne (28 user(s) are browsing Forum)

Membre(s): 0
Invité(s): 35

Plus ...





« 1 (2)


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#11
Ajoute une pièce à sa maison
Ajoute une pièce à sa maison


See User information
à propos de l'application VB.NET, j'ai mis à jour le dossier du URL que j'ai mentionné précédemment: http://www.box.net/shared/xc44rksi2h

J'ai ajouté le fichier Lego70909ClassLibSource.zip qui contient la source d'une DLL qui est en fait une boite noir qui gère la communication avec l'interface 70909. On a qu'à mettre en référence dans nos projets personnels en VB.NET.

J'ai modifié la DEMO2 en ce sens...

J'ai aussi ajouté un fichier TXT contenant le texte explicatif en anglais que j'ai posté sur lugnet.

De plus, J'ai testé les fichiers setup d'installation des démos sur un PC avec Windows 7 chez mon frère et ça semble bien fonctionner.

Yves

Posted on: 09/01/2010 05:23
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#12
Ajoute une pièce à sa maison
Ajoute une pièce à sa maison


See User information
Bon, de retour après une longue absence...

En fait, j'ai ressorti mon Lego Interface B (9751) et avec un nouveau projet en tête.

Il y a un dizaine d'années, j'avais fait un programme VB.Net pour gérer cet interface.

Je travaille depuis 30 ans dans l'automatisation industrielle et donc avec des automates programmables communément appelés PLC (Programmable Logic Controller).

C'est bien beau le VB.Net, mais ce qu'il manque vraiment, c'est un interface graphique et un langage simple pour programmer des modules d'entrées/sorties tel que ce qu'offre le 9751.

J'ai vu sur le Net le projet "OpenPLC" (http://www.openplcproject.com) qui offre un solution gratuite qui inclut un PLC disponible sur plusieurs plateformes donc Windows, Linux, RasberyPI, Arduino, etc... et en plus il y a un IDE, c'est à dire un interface de programmation dans 3 des langages les plus répandus, soit le Ladder, le SFC (Grafcet) et le FBD (Function Block Diagram).
Il supporte le protocole Modbus en TCP/IP ou RTU (Série) qui est un vieux protocole de communication encore très populaire en industrie.

J'ai pensé à faire un Server Modbus d'entrées/sorties avec le 9751, pour pouvoir le programmer avec n'importe PLC qui supporte le Modbus, comme le OpenPLC.

J'ai trouvé une librairie (DLL) pour faire du Modbus en .net. (EasyModbus)
Je pensais donc me partir de mon projet antérieur en VB.Net mais la DLL Modbus ne marche pas bien en VB.
J'ai donc décidé de migrer en C# en utilisant ce qu'une autre personne a déjà fait dans le passé pour le 9751 et j'y ai apporté quelques modifications et améliorations et intégré le Modbus.

Ce qui convertit donc l'interface 9751 en Module d'entrée/sortie Modbus Server.

J'ai réussi à faire fonctionner sans problème avec OpenPLC...
Et c'est performant!!!


Si il y en a parmi vous qui êtes intéressé à essayer ça, laissez moi savoir et je donnerai la source ainsi que plus d'instructions.

Au plaisir.

Yves.

Posted on: 08/03 06:34

Edited by GrosBedon on 08/03/2018 12:51:43
Edited by GrosBedon on 08/03/2018 12:52:36
Edited by GrosBedon on 08/03/2018 12:54:59
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#13


See User information
Merci pour ton suivi.

Je vais m'amuser à publier tes recherches dans le forum des ambassadeurs...

Posted on: 08/03 11:28
_MSC_RESIZED_IMAGE
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#14
Ajoute une pièce à sa maison
Ajoute une pièce à sa maison


See User information
Peux-tu mettre ton source sur Github?

Posted on: 08/03 12:54
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#15
Ajoute une pièce à sa maison
Ajoute une pièce à sa maison


See User information
Je ne suis pas familier avec Github mais je vais regarder ça.

Pour l'instant, tu vas trouver la source au lien:

https://app.box.com/shared/xc44rksi2h

tu prends le LegoInterfaceB_MB.zip (https://app.box.com/s/f1rpaucw84nd24md1neuuj8is4vuqmv2)

C'est fonctionnel du moins sur mon PC, mais sans doute que je vais peaufiner encore et mettre à jour régulièrement.

Tu peux même, si tu as windows 10 avec Dot Net framework > 4.0, utiliser le .exe compilé qui se trouve dans le rep: LEGOInterfaceB_MB\LEGOInterfaceB_MB\bin\Release

Il est important de garder la DLL EasyModbus.dll dans le même rep que le .exe...

Si ça ne fonctionne pas, je compilerai une version "installable".


Pour tester, sans installer le OpenPLC, vous pouvez utiliser un logiciel qui simule du Modbus Client (Ou Modbus Master).
Le lego étant un Modbus Server (ou Modbus Slave).
J'utilise le logiciel gratuit de Radzio qui est bugué mais fonctionnel.
http://en.radzio.dxp.pl/modbus-master-simulator/

Quand vous exécutez le LEGOInterfaceB.exe,
1- Il faut choisir le Port série où est raccordé le 9751.
2- Cliquer Start.
3- Cliquer Start Modbus.

Dans Radzio,
Faut aller dans menu Connection -> setting:
1- Choisir Modbus TCIP/IP
2- Mentionner Adresse IP. Moi je mets 127.0.0.1 car sur le même PC que j'exécute le .exe lego.
3- Changer le port pour 503. (pcq le port 502 est utilisé par OpenPLC qui roule aussi sur même PC dans mon cas. Je vais mettre ce paramètre ajustable dans prochaines versions)
4- Ensuite vous faites Files-> New.
5- Puis Connect.

Le Modbus a 4 types de registre:
00001-09999: Coils (Sorties: Moteurs, Lumières)
10001-19999: Digital Inputs (Entrées digitales=Ex.: Interrupteur ON/OFF)
30001-39999: Input Registers (Entrées Analogiques: Température, Rotation, Détecteur Lumière/couleur etc)
40001-49999: Registres Tout Usage (Sorties Analogiques. Peut être écrit à ou Lu. Je m'en sert pour envoyer niveau de puissance (voltage) aux sorties...)

Le Mapping Lego 9751 vs Modbus:
Bien que je commence à l'adresse 1, ça commence à 0 dans Radzio et Open PLC... en fait ça dépend aussi de la config...

00001 à 00008: 1=ON, 0=OFF, sorties A à H
00011 à 00018: 1=Direction Avant (Led droit), 0=Direction Arrière (Led Gauche). Sorties A à H
00031 a 00034: Reset Compte du détecteur de Rotation.

10001 à 10008: Entrées Digitales (Touch Sensors) pour Entrées 1 à 8
10009 à 10012: Direction du détecteur de Rotation, Port 5 à 8
10013: 1=Bouton d'arrêt d'urgence rouge sur l'interface est activé.

30001 à 30008: Valeur brute analogique des ports d'entrées 1 à 8. (Utiliser surtout je pense pour le détecteur de température et de Lumière, voir les références plus bas).

30009 à 30012: Compte de Détecteur de Rotation, Ports 5 à 8
30013 à 30016: Vitesse du détecteur de Rotation, Port 5 à 8 (Donne un chiffre de 0 à 3 seulement, ce qui est aussi l'incrément du compte...)

40001 à 40008: Puissance Ports de sorties A à H. Valeur 0=Min, 7=Max.
40009 à 40012: Consigne pour le Reset du Compte des détecteurs de rotation. (Le reset peut initialiser le compte à une autre valeur que zéro)

Voilà.
N'oubliez pas d'ajuster la puissance des sorties (Power = 0 par défaut. Doit être 0 à 7, 7 étant le Max)

Pour l'utilisation avec OpenPLC, j'ai suivi la procédure d'installation disponible sur le site, soit installation sous windows, et vers la fin, j'ai mentionné le Driver Modbus...
J'ai configuré le Modbus telque mentionné (fichier config à downloader dans le PLC...Il y a une application web pour aider à faire ce fichier cfg)

Je donnerai plus de détail dans un prochain post.


Crédits:
- Je me suis parti de la source trouvé ici: http://www.lgauge.com/technic/LEGOInterfaceB/9751.htm
J'utilise encore même représentation graphique.
J'ai modifié la gestion lecture des entrées pour rendre le plus rapide que possible. (J'ai créé un thread séparé). et j'ai intégré le Modbus.

- http://www.blockcad.net/dacta/

- http://web.archive.org/web/2007113021 ... as.muohio.edu/paper2.html


Posted on: 08/03 13:40

Edited by GrosBedon on 08/03/2018 14:14:49
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#16


See User information
Citation :
Thank you for sharing this here. I've tried in the past and got stuck on using a computer with anything beyond Windows XP. I did find some additional resources, like the L-Guage page describing the interface and some of its protocols:

http://www.lgauge.com/technic/LEGOInterfaceB/9751.htm

and this Active X control solution:

http://www.drdobbs.com/embedded-syste ... al-time-compute/184410492

I need to find some time (and dig out my interface :) ) to test this new option. I would love to get more detailed information and/or a sample code.


Citation :
I always thought it possible to hook one of these up to the "special port" on the NXT (need RS-485 to RS-232 conversion but that's easy). Would take a little custom code too... Imagine an NXT controlling 11 motors?

Posted on: 09/03 00:01
_MSC_RESIZED_IMAGE
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#17
Ajoute une pièce à sa maison
Ajoute une pièce à sa maison


See User information
Pour vous donner une idée, Voici une image montrant un petit programme test que j'ai fait avec OpenPLC qui communique Modbus avec le Lego 9751.
J'ai utilisé le langage Ladder (Diagramme échelle) qui est de loin le plus populaire dans le domaine des PLC Industriel.

_MSC_RESIZED_IMAGE

Posted on: 09/03 04:20
Top


Re: Le 9751 Control Panel fonctionne t-il sur Windows XP ???
#18
Ajoute une pièce à sa maison
Ajoute une pièce à sa maison


See User information
J'ai téléchargé sur https://app.box.com/shared/xc44rksi2h une nouvelle version 2 pour le Gateway Modbus Server Lego InterfaceB.

Cette version permet l'utilisation de deux Interface B donc 2 fois plus d'entrées et sorties sur un même lien Modbus.

Pour le 2e InterfaceB, les adresses Modbus sont les mêmes sauf qu'il faut ajouté 100.

Exemple:
Lego Interface B #1: 00001 à 00008: 1=ON, 0=OFF, sorties A à H
Lego Interface B #2: 00101 à 00108: 1=ON, 0=OFF, sorties A à H

Etc...

Posted on: 11/04 01:18
Top




« 1 (2)




[Advanced Search]


Recherche
Nouveau membre
eldonpace
eldonpace
04/08/2018
SP4CE
SP4CE
29/07/2018
DROBX
DROBX
11/07/2018
Ultdrake
Ultdrake
24/06/2018
ClintBarto
ClintBarto
21/06/2018
4roues
4roues
15/04/2018
technotron
technotron
09/04/2018
spacecool
spacecool
05/04/2018
Boba_Fett_A0050
Boba_Fett_A0050
03/04/2018
LegoHawk
LegoHawk
03/04/2018