Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

modifier/ecrire une variable dans un PIC
paulfjujo
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 897
Âge : 67
Enregistré en : juillet 2015
Localisation : 01120
Contact :

#11 Message par paulfjujo » lun. 2 oct. 2017 09:36

bonjour Jeremy et à tous,


est ce que l'IHM doit être maitre et venir piochez les infos dans la mémoire du "PIC RADIO" ou est ce que le "PIC radio" doit envoyer a l'IHM les infos ?. En sachant que ça devra se faire dans les deux sens . ? Il s'agit de la liaison "3" sur le schéma


En l'occurence, c'est TOI, le seul maitre à bord !
et qui doit decider qui sera le maitre PIC

Le PIC esclave doit -il être autonome , en cas de perte de liaisonn #3 ?
si , oui, il est donc MAITRE par rapport au client distant .. le robot
mais peut rester esclave vis à vis du 18F87J50 , si la liaison #3 est etablie.

Un Technicien peut tres bien faire son depannage tout seul, et envoyer un rapport au Patron, en fin de mission
ou tous les jours pour suvre l'avancement
Le Patron , c'est l'IHM ?
Le technicien ..le PIC au bout de la liaison #3
La machine à depanner .. le robot

C'est aussi le meme principe qu'une Supervision (Controle Bailey, Intouch, Yaskawa...)dans le monde industriel
La Supervision peut envoyer des commandes aux automates et recevoir des donnees provenant de multiples sources
et les automates peuvent continuer leur job, en mode degradé, en cas de probleme sur la supervision.
nota: => definir ce que sera le mode degradé

Le plus facile est bien sur une liaison directe UART Maitre <-> UART ESCLAVE
où la notion de maitre ou esclave dependra uniquement du protocole etabli entre les 2 pics
avec le 18F87J50 2 UARTs Hardware + eventuel 3em UART Software
ou
un peu plus compliqué une liaison I2C inter PIC .. mais à definir qui sera le maitre ..
au niveau du I2C Hardware du PIC

modifier/ecrire une variable dans un PIC
cyril13110
Passioné
Passioné
Messages : 439
Âge : 35
Enregistré en : avril 2016
Localisation : 13

#12 Message par cyril13110 » lun. 2 oct. 2017 22:40

bonjour jeremy et bonjour paulfjujo,

oui cest exactement ca paulfjujo.

une communication entre un automate et un ihm industriel fonctionne tres simplement sur le principe suivant et ce quelque soit le type de communication :
émissions d'une demande de lecture/ecriture
émission de l'adresse visé
échange de la valeur
bon il y a certainement d'autre etape intermédiaire que je ne connais pas forcément mais bon a vrai dire quand on programme un api et un ihm on na pas trop le temps de se poser la question.

mais dans tous les cas et quelque soit le sens de la communication, si tu a plus d'un bute à transferer tu vas etre obligé de faire une table d'adressage.

modifier/ecrire une variable dans un PIC
Temps-x
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 727
Enregistré en : juillet 2016
Localisation : Terre

#13 Message par Temps-x » mar. 3 oct. 2017 01:25

Bonjour Jérémy, paulfjujo, cyril13110, et bonjour tous le monde,


Une idée sur 12 bits, tu envois 6 bits une première fois, et tu renvois 6 bits mais les mêmes.

Exemple :

Emetteur envoi--->110101

Récepteur décode la trame, et les mets dans une variable, récepteur demande un nouvelle envoi

Emetteur renvoi les mêmes--->110101

Récepteur décode la trame, et compare avec la variable
- si ok, renvoie à l'émetteur le code (comme quoi c'est bon)
- si mauvais, renvoie à l'émetteur le code (comme quoi c'est mauvais)

L'émetteur attendras seulement deux réponses, mauvais ou bon, donc, il ne peut y avoir confusion.

Le code peux corresponde à la modification d'une variable, le seule problème sur 6 bits, c'est que tu as 32 possibilités.
moins le code d'erreur, le code c'est bon, code à toi d'émettre, et peux d'être bien d'autre.

Faire un protocole c'est pas simple, il faut bien y réfléchir, c'est la clé de la réussite de ton projet. :wink:

A+
Quand la souris nargue le chat, c'est que son trou n'est pas loin.

modifier/ecrire une variable dans un PIC
Jérémy
Administrateur du site
Administrateur du site
Messages : 1975
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#14 Message par Jérémy » mar. 3 oct. 2017 16:31

Désolé du retard,

Sur ce coup les gars, je ne vous comprends pas trop. Vous partez super loin .... dehors!!

Je cherche seulement les moyens qu'on a pour pouvoir envoyer une ou plusieurs variables entre deux pics ! et cela dans les deux sens.

Mon PIC IHM doit pouvoir écrire ou modifier ( cela revient au même) une ou plusieurs variables sur mon PIC radio, pour que celui ci puisse les envoyer.
Mais mon PIC IHM a besoin également d’afficher des variables(écran) qui seront stockés dans mon PIC "radio". Il doit donc soit aller les récupérer soit on lui envoie et il les reçoit.

JE ne souhaite pas inventer de protocole :sifflotte:

LA particularité c'est que le PIC radio, se doit d'etre le plus réactif possible et autonome dans le sens ou rien ne doit le bloquer. En effet ce sont ces ordres qui piloter le robot, mais aussi il devra détecter "rapidement" une perte de communication.

A la vue de vos réponses, je pense que je passerais par un UART pour commencer. mais je n'aime pas trop cette solution car le PIC radio devra envoyer les variables. j'aurais préférè que le PIC IHM aille les lire sur le PIC radio mais je ne sais pas comment .
C'est en faisant des erreurs, que l'on apprend le mieux !!!

modifier/ecrire une variable dans un PIC
cyril13110
Passioné
Passioné
Messages : 439
Âge : 35
Enregistré en : avril 2016
Localisation : 13

#15 Message par cyril13110 » mar. 3 oct. 2017 19:39

salut a tous,

il va falloir que tu fixe une methodologie de tranfert, aussi appelé protocole.
quelque soit ton maitre et ton esclave il va falloir que tu y passe pour assurer ta comm...
le maitre va envoyer la donnée et demander la lecture.
ou alors en autonomie total chaqu'un envoie sa trame 8 bites unique et basta...
en résumé tu invente un protocole perso pour ton appli...
l'uart n'est que le moyen physique de communication.

modifier/ecrire une variable dans un PIC
paulfjujo
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 897
Âge : 67
Enregistré en : juillet 2015
Localisation : 01120
Contact :

#16 Message par paulfjujo » mer. 4 oct. 2017 10:49

bonjour à tous,




A la vue de vos réponses, je pense que je passerais par un UART pour commencer. mais je n'aime pas trop cette solution
car le PIC radio devra envoyer les variables. j'aurais préférè que le PIC IHM aille les lire sur le PIC radio mais je ne sais pas comment .


Si le PIC IHM veut etre au courant , if faut bien interroger le PIC Radio .. et qu'il reponde !

Ou si le PIC IHM est le maitre absolu..
il envoi les donnes au PIC Radio (esclave) qui les utilise directement..
et ne renvoi au IHM que les accuses de reception provenant du robot.

le PIC IHM ne pouvait pas assumer le role du PIC Radio ?

Sinon, le seul acces direct sur certains PIC 8 bits, est sur le PORT D en acces direct parralelle 8 bits
que je n'ai personellement jamais testé ..(Streaming Parallel Port (SPP) )
modbilise forcément le meme port D en face ...

la liaison I2C maitre esclave ..
la demande est faite par le maitre IHM
le PIC Radio esclave remplis les donnees à envoyer.
Le protocole I2C se charge de transferer les questions reponses..
mais cela mobilise des ressources Hardware/software des 2 cotes.

Le plus simple reste encore l'UART..
distance entre les 2 PICS ?
nombre de bytes à echanger ?
si faible distance 115200 bds !
avec eventuellement un CRC16 en fin de message, pour securiser l'echange.
utile pour espionage ou debugging .

modifier/ecrire une variable dans un PIC
Jérémy
Administrateur du site
Administrateur du site
Messages : 1975
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#17 Message par Jérémy » jeu. 5 oct. 2017 08:48

Bonjour ,

Si le PIC IHM veut etre au courant , if faut bien interroger le PIC Radio .. et qu'il reponde !

Je pensais qu'il était possible de lire seulement un PIC, sans qu'il fasse quelques choses . Comme par exemple lire dans une EEPROM . On va chercher l'info plutôt que ce soit lui qui nous la donne.

le PIC IHM ne pouvait pas assumer le role du PIC Radio ?

Non il y a beaucoup trop de chose a gerer pour l'IHM(notament le tactile) , et le pic radio doit être le plus réactif possible . Je dois envoyer au minimum 10 commande par secondes pour piloter le robot, sans quoi on a de la latence.

distance entre les 2 PICS ?

cela tiens dans une radiocommande donc <10cm, dans 5 cm je pense. Je suis en train de faire le montage hard !
C'est en faisant des erreurs, que l'on apprend le mieux !!!

modifier/ecrire une variable dans un PIC
cyril13110
Passioné
Passioné
Messages : 439
Âge : 35
Enregistré en : avril 2016
Localisation : 13

#18 Message par cyril13110 » jeu. 5 oct. 2017 12:26

bonjour jerrmy et bonjour a tous,
heu je ne vois pas comment le pic de ton ihm pourait lire la memoire de l'autre pic sans solliciter les ressources.
apres vue que tu est en liaison radio autant monter la vitesse de communication au max de tes puces radios.

ce que tu peux faire aussi, au lieux de gerer la communication d'un seul coup tu pourrais l'etaller dans le temps.
tu fixe un temps de cycle et par exemple tous les 10ms tu faits un envoie de trame sur une interruption.
du coup au lieux de bloquer le traitement
beaucouo dun coup dntu le découpe et le reste est traité en temps masqué.

modifier/ecrire une variable dans un PIC
JJE
Débutant
Débutant
Messages : 91
Âge : 78
Enregistré en : novembre 2017
Localisation : Picardie

#19 Message par JJE » jeu. 11 janv. 2018 19:21

Bonsoir à tous
Je reprends ce sujet un peu tard mais je ne l'avais pas encore lu
Jérémy a écrit :Source du message Mais mon PIC IHM a besoin également d’afficher des variables(écran) qui seront stockés dans mon PIC "radio". Il doit donc soit aller les récupérer soit on lui envoie et il les reçoit.


pourquoi le pic IHM ne les garde-t-il pas plutôt que de les envoyer au PIC radio et de les récupérer ensuite ?
JJE


Retourner vers « Généralités sur les PICs »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité