Utilisation du port série d’un P.C.
Utilisation du port série d’un P.C. D’après un livre de B. Kainka dont le titre est: « petites expériences d’électronique avec mon PC pour mesurer, commander, automatiser » Aux éditions Publitronic Paris
Utilisation du port série d’un P.C. Le port série d’un P.C.
Utilisation du port série d’un P.C. Le port série d’un P.C. Le boîtier d’utilisation
Utilisation du port série d’un P.C. Le port série d’un P.C. Le boîtier d’utilisation Le langage utilisé: Visual Basic
Utilisation du port série d’un P.C. Le port série d’un P.C. Le boîtier d’utilisation Le langage utilisé: Visual Basic Le principe de fonctionnement
Utilisation du port série d’un P.C. Le port série d’un P.C. Le boîtier d’utilisation Le langage utilisé: Visual Basic Le principe de fonctionnement Un exemple d’utilisation: mesure d’une longueur
Le port série d’un P.C. C’est un connecteur à 9 broches dont le nom est RS232.
Le port série d’un P.C. C’est un connecteur à 9 broches dont le nom est RS232. Il y en a au moins un exemplaire sur un portable (com1) et deux sur un P.C. de bureau (com1 et com2).
Le port série d’un P.C. Les neuf broches ont toutes une fonction différente mais il en existe globalement deux types:
Le port série d’un P.C. Les neuf broches ont toutes une fonction différente mais il en existe globalement deux types: Les entrées: RxD, CTS, DSR, DCD, RI
Le port série d’un P.C. Les neuf broches ont toutes une fonction différente mais il en existe globalement deux types: Les entrées: RxD, CTS, DSR, DCD, RI Les sorties: TxD, RTS et DTR
Le port série d’un P.C. Les neuf broches ont toutes une fonction différente mais il en existe globalement deux types: Les entrées: RxD, CTS, DSR, DCD, RI Les sorties: TxD, RTS et DTR GND est la masse.
Le port série d’un P.C. Les lignes RxD, CTS, DSR, DCD, RI, TxD, RTS et DTR peuvent être commandées en les activant (DTR=1) ou en les désactivant (DTR=0).
Le port série d’un P.C. Les lignes RxD, CTS, DSR, DCD, RI, TxD, RTS et DTR peuvent être commandées en les activant (DTR=1) ou en les désactivant (DTR=0). Si DTR=1 alors U(DTR,GND)=10V
Le port série d’un P.C. Les lignes RxD, CTS, DSR, DCD, RI, TxD, RTS et DTR peuvent être commandées en les activant (DTR=1) ou en les désactivant (DTR=0). Si DTR=1 alors U(DTR,GND)=10V Si DTR=0 alors U(DTR,GND)=-10V
Le boîtier d’utilisation Pour le connecter au port série du P.C. via un câble adéquat nous avons fixé un connecteur série femelle sur un boîtier classique.
Le boîtier d’utilisation Chaque broche a été soudée à un petit fil,
Le boîtier d’utilisation puis prolongée …
Le boîtier d’utilisation et reliée à un connecteur permettant de placer directement les composants dans le boîtier, en liaison avec la broche concernée.
Le boîtier d’utilisation On obtient alors un boîtier sur lequel on peut directement faire un montage.
Le langage utilisé: Visual Basic Il s’agit de Visual Basic 5, version VB5CCE (on ne peut pas compiler les programmes mais on peut les exécuter).
Le langage utilisé: Visual Basic Il s’agit de Visual Basic 5, version VB5CCE (on ne peut pas compiler les programmes mais on peut les exécuter). Il est dans le cédérom fourni avec le livre.
Le langage utilisé: Visual Basic Il s’agit de Visual Basic 5, version VB5CCE (on ne peut pas compiler les programmes mais on peut les exécuter). Il est dans le cédérom fourni avec le livre. De petits programmes au format .exe sont prêts à l’emploi mais il est nécessaire de les retoucher en fonction du matériel utilisé.
Le langage utilisé: Visual Basic Il s’agit de Visual Basic 5, version VB5CCE (on ne peut pas compiler les programmes mais on peut les exécuter). Il est dans le cédérom fourni avec le livre. De petits programmes au format .exe sont prêts à l’emploi mais il est nécessaire de les retoucher en fonction du matériel utilisé. Le langage est assez intuitif et on peut transformer les programmes afin que les élèves n’aient pas de programmation à faire.
Le langage utilisé: Visual Basic Il s’agit de Visual Basic 5, version VB5CCE (on ne peut pas compiler les programmes mais on peut les exécuter). Il est dans le cédérom fourni avec le livre. De petits programmes au format .exe sont prêts à l’emploi mais il est nécessaire de les retoucher en fonction du matériel utilisé. Le langage est assez intuitif et on peut transformer les programmes afin que les élèves n’aient pas de programmation à faire. On pourrait utiliser Delphi!
Le principe de fonctionnement: On peut tout d’abord commander les différentes sorties pour s’en servir en tant que générateurs (+10V ou –10V).
Le principe de fonctionnement: On peut tout d’abord commander les différentes sorties pour s’en servir en tant que générateurs (+10V ou –10V). On peut se servir des entrées pour recueillir des informations qui serviront à déclencher des actions.
Le principe de fonctionnement: On peut tout d’abord commander les différentes sorties pour s’en servir en tant que générateurs (+10V ou –10V). On peut se servir des entrées pour recueillir des informations qui serviront à déclencher des actions. Un exemple: l’allumage d’une lampe témoin en fonction de la luminosité extérieure.
Le principe de fonctionnement: Le principe: Allumage d’une D.E.L. en fonction de la luminosité extérieure.
Le principe de fonctionnement: Le principe: Allumage d’une D.E.L. en fonction de la luminosité extérieure. S’il fait jour alors la D.E.L. est allumée.
Le principe de fonctionnement: Le principe: Allumage d’une D.E.L. en fonction de la luminosité extérieure. S’il fait jour alors la D.E.L. est allumée. S’il fait nuit alors la D.E.L est éteinte.
Le principe de fonctionnement: Le principe: Allumage d’une D.E.L. en fonction de la luminosité extérieure. S’il fait jour alors la D.E.L. est allumée. S’il fait nuit alors la D.E.L est éteinte. On utilise une photorésistance qui a pour caractéristiques: 140 (jour)<R<350k (nuit)
Le principe de fonctionnement: Le schéma du montage:
Le principe de fonctionnement: Le schéma du montage: Dans le noir, U(TXD)>1,5V DSR =1 DTR=0 (-10V) la L.E.D. est bloquée (éteinte)
Le principe de fonctionnement: Le schéma du montage: Dans le noir, U(TXD)>1,5V DSR =1 DTR=0 (-10V) la L.E.D. est bloquée (éteinte) A la lumière, U(TXD)<1,5V DSR passe de 1 à 0 DTR=1 (+10V) la L.E.D. est passante (allumée)
Le principe de fonctionnement: Private Sub Form_Load() début du programme i = OPENCOM("COM1, 1200,N,8,1") ouverture du port et test de présence If i = 0 Then MsgBox ("Erreur d'interface") message d’erreur TXD 1 sortie TXD à 10V DTR 0 sortie DTR à –10V la L.E.D. est éteinte Timer1.Interval = 10 toutes les 10ms effectuer la série d’actions (plus bas) End Sub fin du programme Private Sub Timer1_Timer() début de l’action effectuée toutes les 10ms If DSR = 0 Then test de l’état de DSR: si elle est à 0 (il fait jour) alors DTR 1 la sortie DTR passe à 1, la L.E.D. s’allume Else: DTR 0 sinon la sortie DTR passe à 0 et la L.E.D. s’éteint End If fin du test de l’état de l’entrée DTR End Sub fin de l’action effectuée toutes les 10ms Private Sub Form_Unload(cancel As Integer) CLOSECOM Fermeture du port série End Sub Dans le noir, U(TXD)>1,5V DSR =1 DTR=0 (-10V) la L.E.D. est bloquée (éteinte) A la lumière, U(TXD)<1,5V DSR passe de 1 à 0 DTR=1 (+10V) la L.E.D. est passante (allumée)
Le principe de fonctionnement: On peut aussi faire des mesures et c’est d’un grand intérêt pour M.P.I.
Le principe de fonctionnement: On peut aussi faire des mesures et c’est d’un grand intérêt pour M.P.I. Le montage utilisé est alors un circuit (RC) dont on mesure un temps de charge voisin de =R.C
Le principe de fonctionnement: On peut aussi faire des mesures et c’est d’un grand intérêt pour M.P.I. Le montage utilisé est alors un circuit (RC) dont on mesure un temps de charge voisin de =R.C On fait varier R, C étant connue .
Le principe de fonctionnement: Le schéma du montage:
Le principe de fonctionnement: Le schéma du montage: Il utilise une diode afin de diminuer au maximum la durée de la décharge.
Le principe de fonctionnement: Le schéma du montage: Il utilise une diode afin de diminuer au maximum la durée de la décharge. Le condensateur est polarisé, C=47F et sa borne négative est reliée à la sortie TXD=0 (-10V)
Le principe de fonctionnement: Sa borne négative étant reliée à la sortie TXD=0 (-10V), c’est la sortie DTR qui commande la charge et la décharge du condensateur.
Le principe de fonctionnement: Sa borne négative étant reliée à la sortie TXD=0 (-10V), c’est la sortie DTR qui commande la charge et la décharge du condensateur. Le programme détecte sur l’entrée DSR un niveau de tension déterminé.
Le principe de fonctionnement: Ce niveau de tension est le seuil de commutation de l’entrée (1,5V). Cela signifie que DSR change d’état lorsqu’elle est passée de –10V à 1,5V soit 11,5V alors que la tension maximale est 20V.
Le principe de fonctionnement: Ce niveau de tension est le seuil de commutation de l’entrée (1,5V). Cela signifie que DSR change d’état lorsqu’elle est passée de –10V à 1,5V soit 11,5V alors que la tension maximale est 20V. Cela représente 11,5/20=57,5% et non 63%. Mais ce n’est pas grave car il suffit d’en tenir compte…
Le principe de fonctionnement: Le programme utilisé: Private Sub Form_Load() i = OPENCOM("COM1,1200,N,8,1") If i = 0 Then MsgBox ("COM Interface Error") TXD 0 DTR 0 End Sub Private Sub Form_Unload(Cancel As Integer) CLOSECOM
Le principe de fonctionnement: Private Sub Command1_Click() lorsqu’on clique sur le bouton S = 0 initialisation de S à 0 For i = 1 To 3 début d’une série de 3 mesures successives de la durée de charge DTR 1 la sortie DTR passe à +10V, le condensateur se charge Command1.Caption = "En cours" le message dans le bouton change REALTIME (True) le programme devient prioritaire au niveau du temps TIMEINITUS initialisation de la variable temps While (DSR() = 0) And (TIMEREADUS() < 2000000) boucle permettant d’arrêter le Wend programme au bout de 2s s’il ne se passe rien! T = TIMEREADUS() T prend la valeur de la durée de charge T = T * 1.0000000001 T = T / 1000 T est convertit en microsecondes S = S + T S stocke la valeur de T mesurée DTR 0 La sortie DTR passe à 0, le condensateur se décharge While TIMEREADUS() < 500000 boucle permettant au condensateur de se Wend décharger REALTIME (False) le programme n’est plus prioritaire au niveau du temps Next i on repart pour une autre mesure de la durée de charge T = S / 3 moyenne des trois durées successives de charge RR = 11460 * (1 - Exp(-T / 463.3)) calcul de la valeur de la résistance RR = Int(RR) on ne prend que la partie entière de la valeur trouvée Label1.Caption = Str$(RR) + " ohms" affichage de la valeur en ohms Command1.Caption = "Mesure" le message du bouton de commande redevient mesure End Sub fin des actions à effectuer après le click
Le principe de fonctionnement: La relation: R = 10460 * (1 - Exp(-T / 463.3)) n’a pas été trouvée au hasard!
Le principe de fonctionnement: La relation: R = 10460 * (1 - Exp(-T / 463.3)) n’a pas été trouvée au hasard! Elle est le fruit d’un travail préalable d’étalonnage de notre système:
Le principe de fonctionnement: La relation: R = 10460 * (1 - Exp(-T / 463.3)) n’a pas été trouvée au hasard! Elle est le fruit d’un travail préalable d’étalonnage de notre système: En effet nous avons, pour différentes valeurs connues de résistance, mesuré le temps de charge. R T W ms 500 24.4 1000 45.2 1500 64.3 2000 82.4 2500 100.6 3000 122.7 3500 145.5 4000 169.7 4500 195.8 5000 225 5500 255.9 6000 290.5 6500 329 7000 371 7500 420 8000 476 8500 542 9000 624 9500 722 1E4 852
Le principe de fonctionnement: La relation: R = 10460 * (1 - Exp(-T / 463.3)) n’a pas été trouvée au hasard! Elle est le fruit d’un travail préalable d’étalonnage de notre système: En effet nous avons, pour différentes valeurs connues de résistance, mesuré le temps de charge. Puis, nous en avons déduit, par modélisation avec le logiciel Regressi, la relation ci-dessus! R T W ms 500 24.4 1000 45.2 1500 64.3 2000 82.4 2500 100.6 3000 122.7 3500 145.5 4000 169.7 4500 195.8 5000 225 5500 255.9 6000 290.5 6500 329 7000 371 7500 420 8000 476 8500 542 9000 624 9500 722 1E4 852
Le principe de fonctionnement: Le programme utilisé: Private Sub Command1_Click() DTR 1 REALTIME (True) TIMEINITUS While (DSR() = 0) And (TIMEREADUS() < 1500000) Wend T = TIMEREADUS() REALTIME (False) T = Int(T / 1000) Label1.Caption = Str$(T) DTR 0 End Sub Private Sub Form_Load() i = OPENCOM("COM1,1200,N,8,1") If i = 0 Then MsgBox ("COM Interface Error") TXD 0 RTS 0 Private Sub Form_Unload(Cancel As Integer) CLOSECOM
Un exemple d’utilisation: mesure d’une longueur Le schéma du montage:
Un exemple d’utilisation: mesure d’une longueur Le schéma du montage: A la place de R, on place deux fils qui se promènent sur une feuille de papier Canson noire.
Un exemple d’utilisation: mesure d’une longueur Le schéma du montage: A la place de R, on place deux fils qui se promènent sur une feuille de papier Canson noire. On remarque que suivant la distance entre les extrémités des deux fils, la valeur de R change.
Un exemple d’utilisation: mesure d’une longueur C’est le point de départ de la situation présentée aux élèves.
Un exemple d’utilisation: mesure d’une longueur C’est le point de départ de la situation présentée aux élèves. A eux d’imaginer le protocole permettant de transformer cela en appareil de mesure d’une longueur avec tout ce que cela implique…
Merci de nous avoir supportés!