connexió per fibra Òptica d’un termopar tipus k a un...

76
Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador Titulació: Ingeniería Tècnica Industrial en Electrònica Industrial TUTOR: Francesc Duch Elies PONENT: Ernest Gil Dolcet DATA: Abril 2006

Upload: others

Post on 09-Jan-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

Titulació: Ingeniería Tècnica Industrial en Electrònica Industrial

TUTOR: Francesc Duch Elies PONENT: Ernest Gil Dolcet DATA: Abril 2006

Page 2: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

2

Preàmbul Aquest projecte neix de la unió de les dues últimes assignatures de la carrera, Informàtica Industrial II i Electrònica Digital II. La finalitat d’aquest ha estat poder aprofundir una mica més en aquestes dos assignatures, dissenyant un sistema capaç de realitzar una comunicació entre un microprocessador i un ordenador personal. Aquest projecte final de carrera ha estat realitzat per Francesc Duch Elies, amb DNI.: 47682618 per la Universitat Rovira i Virgili i sota la direcció de l’Ernest Gil Dolcet, professor del departament d’Enginyeria Electrònica, Elèctrica i Automàtica (DEEEA).

Page 3: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

3

Índex

1. Objectiu del Projecte __________________________________________________ 5

2. Memòria Descriptiva __________________________________________________ 6 2.1. Característiques Tècniques dels Equips Principals________________________________ 7

2.1.1. Termopar ____________________________________________________________ 7 2.1.2. AD597______________________________________________________________ 7 2.1.3. Conversor Analògic Digital ______________________________________________ 7

2.2. Característiques Tècniques del Projecte________________________________________ 8

3. Memòria de Càlcul ____________________________________________________ 9 3.1. Termopar ______________________________________________________________ 9

3.1.1. Introducció __________________________________________________________ 9 3.1.2. Tipus de Termopars ___________________________________________________ 10 3.1.3. Condicionament del Senyal del Termopar___________________________________ 11 3.1.4. AD597 i el Termopar __________________________________________________ 11 3.1.5. Comprovació del circuit________________________________________________ 13 3.1.6. Condicionament del Senyal per al Conversor Analògic Digital ___________________ 14

3.2. Control_______________________________________________________________ 16 3.2.1. Introducció _________________________________________________________ 16 3.2.2. Implantació del Sistema Adoptat _________________________________________ 16

3.3. Microcontrolador _______________________________________________________ 17 3.3.1. Introducció _________________________________________________________ 17 3.3.2. Exigències a Complir __________________________________________________ 17 3.3.3. L’elecció del Microcontrolador __________________________________________ 17 3.3.4. Circuit Oscil·lador (rellotge principal) _____________________________________ 20 3.3.5. Conversor Analògic Digital _____________________________________________ 21 3.3.6. Comunicació RS-232 __________________________________________________ 24 3.3.7. Programació_________________________________________________________ 25 3.3.8. Estructura del Programa – Diagrama de Flux ________________________________ 26

3.4. Sistemes de Comunicacions _______________________________________________ 27 3.4.1. Introducció _________________________________________________________ 27 3.4.2. Fibra Òptica – Components i Tipus _______________________________________ 27 3.4.3. Connectors__________________________________________________________ 29 3.4.4. L’elecció de la Fibra Òptica _____________________________________________ 30 3.4.5. Temps de Resposta ___________________________________________________ 32

3.5. Software______________________________________________________________ 32 3.5.1. Introducció _________________________________________________________ 32 3.5.2. El Programa_________________________________________________________ 33 3.5.3. Gravació d’Històrics __________________________________________________ 34 3.5.4. Estructura dels Objectes Principals ________________________________________ 34

3.6. Alimentació ___________________________________________________________ 35 3.6.1. Introducció _________________________________________________________ 35 3.6.2. Esquema de la Font d’Alimentació ________________________________________ 35

4. Plànols_____________________________________________________________ 36

5. Pressupost__________________________________________________________ 48 5.1. Material Font Alimentació ________________________________________________ 48 5.2. Material Microcontrolador ________________________________________________ 48 5.3. Material Circuit Termopar ________________________________________________ 49 5.4. Material Control________________________________________________________ 49 5.5. Materials Comunicacions Fibra Òptica _______________________________________ 50 5.6. Disseny PCBs__________________________________________________________ 50 5.7. Disseny i Programació de Software__________________________________________ 51 5.8. Pressupost d’Execució Material ____________________________________________ 51 5.9. Pressupost d’Execució del Contracte_________________________________________ 51

Page 4: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

4

6. Annexes____________________________________________________________ 52 6.1. Codi _________________________________________________________________ 52

6.1.1. Microcontrolador_____________________________________________________ 52 6.1.1.1. P16F876.c________________________________________________________ 52 6.1.1.2. 16F876.h_________________________________________________________ 54 6.1.2. Pc ________________________________________________________________ 57 6.1.2.1. Form1.vb ________________________________________________________ 57

6.2. PCW Compiler_________________________________________________________ 63 6.3. ICPROG______________________________________________________________ 69

6.3.1. Configuració del ICPROG ______________________________________________ 69 6.3.2. Programació del microcontrolador ________________________________________ 71

6.4. Visual Studio __________________________________________________________ 72

Page 5: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

1. Objectiu del Projecte L’objectiu del projecte és el de realitzar un sistema d’adquisició i condicionament de dades (DAQ - Data Acquisition System) per mitjà d’una transmissió de dades per fibra òptica. Els sistemes d’adquisició de dades DAQ basats en un bloc d’adquisició de dades i un PC són usats en un ampli rang d’aplicacions als laboratoris, per camp, o en qualsevol planta de tipus industrial. Típicament, els dispositius DAQ són instruments dissenyats per mesurar senyals de voltatge. El problema està en que la majoria dels sensors i transductors generen senyals que s’han de condicionar abans de que un dispositiu DAQ pugui adquirir amb precisió el senyal. Aquest procés conegut com a condicionador de senyal inclou funcions com amplificació, linearització, filtratge i aïllament elèctric. És així, com la majoria de sistemes DAQ basats amb un PC inclouen algun tipus de condicionador de senyal, a més a més del propi dispositiu DAQ i el PC, com mostra la Figura 1.

Figura 1: Procés de condicionament de senyals

El projecte, basat en un sistema DAQ, realitza un control i monitoratge de temperatura d’un medi qualsevol. Per dur-ho a terme s’ha dividit el problema en 5 blocs: (Figura 2)

Bloc 1: Visualització de la temperatura. Bloc 2: Actuador sobre la temperatura. Bloc 3: Comunicació. Bloc 4: Control.

Figura 2: Blocs del projecte

Comunicació

Control

Actuador sobre la temperatura TTeemmppeerraattuurraa

Visualitzador

de la temperatura

2

1 3

4

Senyal física

Transductor (termopar)

Condicionament

Adquisició

Page 6: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

6

Primer bloc: visualització de la temperatura. La funció d’aquest bloc és la de convertir la temperatura física en un nombre, amb el qual poder treballar. Segon bloc: actuador sobre la temperatura. Consta d’un ventilador per refrigerar el medi i una resistència que l’escalfa. Ambdós controls es controlen amb senyals tot – res. El bloc de comunicació descansa, sobre un microcontrolador. La seva funció és comunicar el bloc 1 (visualitzador de temperatura) amb el bloc 4 (control) per a que aquest últim pugui realitzar el control. I alhora comunicar el bloc 4 (control) amb el bloc 2 (actuador sobre la temperatura) per poder acabar de tancar el llaç de control del sistema.

2. Memòria Descriptiva En aquest apartat es fa una explicació general de tot el sistema, fent un aprofundiment dels diferents blocs dels quals consta i desglossant-los en les diferents parts de les quals estan formats. Visualitzador de temperatura El primer tema que es necessita afrontar és la conversió de temperatura a un nombre digital amb el qual treballar. Aquesta transformació comença en un termopar tipus K i seguidament hi ha un condicionador de senyal basat en el AD597. Aquest circuit s’encarrega fer la compensació de la unió freda i alhora genera una sortida proporcional a la temperatura del termopar de 10 mV/Cº. (Adaptador senyal termopar –Figura 3). Després, un conversor analògic digital transforma la tensió analògica en un nombre digital. (Microcontrolador – Figura 3). Actuador sobre la temperatura L’actuador sobre la temperatura (Control temperatura – Figura 3) es basa en un ventilador de 15 Vcc per fer la refrigeració i una resistència de 220 Vca per escalfar el termopar. Els dos modes de funcionament es controlen amb un senyal lògic donat per un microcontrolador. (Microcontrolador – Figura 3). Comunicació El bloc de comunicació està basat en un microcontrolador, aquest envia la temperatura rebuda al bloc de control i segons les ordres retornades d’aquest últim, aplica els senyals corresponents a l’actuador sobre la temperatura. La connexió entre el microcontrolador i l’ordenador es realitza en dues parts: La primera part de la connexió es realitza sobre fibra òptica, podent tenir una comunicació de varis Km sense cap mena de problema en el senyal, ja sigui de pèrdua d’intensitat o d’interferències magnètiques. En la segona part, hi ha una transformació del senyal òptic a senyal elèctric, en aquest punt ja tenim el senyal preparat per l’entrada a l’ordinador.

Page 7: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

7

Control El PC realitza una comparació del nombre rebut amb un valor consigna introduït per l’usuari, retornant al microcontrolador l’ordre que aquest ha de seguir en funció del resultat de la comparació.

Figura 3: Esquema de l’arquitectura del sistema

2.1. Característiques Tècniques dels Equips Principals

2.1.1. Termopar Termopar de tipus K amb una soldadura entre dos metalls, un d’una aleació de Níquel i Crom i l’altre de Níquel i Alumini. Amb un rang de treball entre -270 a 1372 ºC i una FEM entre els dos cables que varia entre -6.468 mV i 54.886 mV respectivament.

2.1.2. AD597 Aquest circuit és capaç de controlar des de -200 ºC fins a 1250 ºC. En la configuració del nostre circuit això no és compleix ja les alimentacions de control no estan alimentades amb els valors necessaris per treballar aquestes temperatures, les alimentacions utilitzades són de +5 V a -5 V, per tant el rang amb que el circuit reballarà amb fiabilitat és des dels -200 a 480 ºC. Aquest últim valor de tensió provoca una sortida del AD597 de 4857 mV assumibles amb la nostra alimentació. El circuit ens dona una precisió de 10 mV/ºC.

2.1.3. Conversor Analògic Digital El ADC (Conversor Analògic Digital) treballa amb valors des dels 0 a 5 Vcc, mes endavant s’observarà que aquest marge ve partit en dos, un de 0 a 1 V per representar tensions negatives i un altre de 1 a 4 V per representar les positives. En l’apartat 3.3.5 es

Medi on controlar la temperatura Termopar

tipus K

Microcontrolador Conversor

Fibra Òptica-Cable sèrie

Control Temperatura

Adaptador senyal

termopar

Font d’alimentació

Cable sèrie

Fibra Òptica

+ 15 Vcc - 15 Vcc + 15 Vcc

Page 8: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

8

podrà observar que cada unitat de volt es representarà per 204 intervals de 5 mV aproximadament. Per tant el marge de temperatures negatives queda establert a -120 ºC i el de temperatures positives queda retallat a 400 ºC.

mVmV 10205204 =⋅ Amb 1020 mV podem visualitzar -120 ºC (Taula 2) ( ) mVmVvolts 408054204 =⋅⋅ Amb 4080 mV podem visualitzar +400 ºC (Taula 2)

2.2. Característiques Tècniques del Projecte Aquest projecte és un sistema de control capaç de visualitzar i controlar temperatures amb un marge des dels -120 ºC fins als +400 ºC. Aquests marges són els mínims valors de treball marcats pel conversor analògic digital.

El projecte té una precisió teòrica de 0,5 ºC tot i que en la pràctica el sistema té oscil·lacions que varien entre 1 i 1,5 V. Càlcul de la precisió teòrica de 0,5 ºC En l’apartat 2.1.2 s’explicava que el circuit AD597 té una precisió de 10 mV/ºC. En l’apartat 2.1.3 es mostra que el conversor analògic-digital té una precisió de 5 mV. Combinant els dos apartats es justifica la precisió de 0,5 ºC.

CCmV

mVprecisió º5,0

/º105

== (1)

Rang de treball del termopar

Rang de treball del Conversor Analògic-Digital

Rang de treball del circuit AD597

-270 ºC 1372 ºC

-200 ºC 480 ºC

-120 ºC 400 ºC

Rang de treball del projecte

-120 ºC 400 ºC

Page 9: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

9

3. Memòria de Càlcul

3.1. Termopar

3.1.1. Introducció El transductor més utilitzat per mesurar temperatura és el termopar. Tot i que el termopar és econòmic, resistent i pot operar en un ampli rang de temperatures, aquest requereix un condicionament especial del seu senyal. El termopar opera gràcies al principi de l’efecte Seebeck, el qual afirma que en la junta de la soldadura de dos metalls diferents es crea un voltatge (FEM) que varia en funció de la temperatura d’aquesta junta. A més, al connectar el cable del termopar al dispositiu de medició, es crea una junta termoelèctrica addicional coneguda com junta freda. És en aquest punt que el voltatge a mesurar inclou el voltatge del termopar i els voltatges de la junta freda (Figura 4). El mètode per compensar aquests voltatges de junta freda no desitjada és conegut com a compensació de la junta freda.

Figura 4: La connexió d’un cable de termopar al sistema de medició crea una junta

termoelèctrica addicional, anomenada junta freda.

La majoria dels productes de condicionament compensen les juntes fredes mitjançant un sensor addicional, com un termistor o un sensor IC. Aquest sensor es col·loca al connector de senyals o bloc terminal per mesurar la temperatura ambient de la junta freda directament. La sensitivitat i el soroll són altres factors importants a tenir en compte quan es mesuren senyals de termopars. La sortida dels termopars és molt petita i canvia de 7 a 50 µV per cada grau (1 ºC) de canvi en la temperatura, obtenint una senyal molt susceptible a efectes de soroll elèctric. Es per això, que els condicionadors de termopar inclouen filtres de soroll pas-baix per suprimir el soroll de 50 i 60 Hz. A més, inclouen amplificadors d’instrumentació d’alt guany per tal d’augmentar el nivell del senyal.

Op

Juntes fredes

Junta termopar

Amplificador Operacional

Page 10: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

10

3.1.2. Tipus de Termopars La magnitud de la FEM depèn dels materials dels conductors utilitzats pel termopar i de les seves condicions metal·lúrgiques. Per altra banda, es poden produir canvis en la composició del material, produïts per la contaminació de l’ambient, mecanismes estranys o impactes termals que influeixen i modifiquen la FEM. En la següent taula podem veure els tipus de termopar més estesos entre el món industrial.

Tipus Marge de temperatura ºC

Materials i aleacions (+) Vs. (-)

Metall – Base E -270 a 1000 Níquel – Crom Vs. Coure – Níquel J -210 a 1200 Ferro Vs. Coure – Níquel T -270 a 400 Coure Vs. Coure – Níquel K -270 a 1372 Níquel – Crom Vs. Níquel - Alumini N -370 a 1300 Níquel – Crom – Silici Vs. Níquel – Silici – Magnesi Metall – Noble R -50 a 1768 Platino – 13 % Rodi Vs. Platí S -50 a 1768 Platí – 10 % Rodi Vs. Platí B 0 a 1820 Platí – 30 % Rodi Vs. Platí – 6 % Rodi

Taula 1: Taula de característiques dels termopars

Figura 5: Representació de la FEM en funció de la temperatura

Page 11: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

11

3.1.3. Condicionament del Senyal del Termopar El condicionament del senyal del termopar no és una feina senzilla, ja que la tensió generada per aquest és baixa ja que té pocs µV/Cº i per tant, és necessari realitzar mesures d’alta resolució. Per altra banda, com es mostra en la Figura 5, la seva resposta és altament no lineal, sobretot en temperatures pròximes als 0 ºC, Amb les quals es treballa en aquest projecte. Tenint un senyal tant susceptible i amb unes característiques tant concretes, es realitza la mesura mitjançant un circuit integrat preparat per treballar amb aquest element, l’AD597 de la marca Analog Devices.

Figura 6: Esquema del mòduls del C.I. AD597

L’AD597 és un regulador de la temperatura de setpoint i un condicionador de senyals de termopars. És en aquest últim punt en el que aprofundirem per a les nostres necessitats.

3.1.4. AD597 i el Termopar

L’AD597 es pot utilitzar per generar una sortida proporcional a la temperatura, d’una resolució de 10 mV/ºC, treballant amb un termopar K. El voltatge de sortida del termopar es mesurat, compensat i amplificat. La compensació es realitza gràcies a la pròpia referència de temperatura que el circuit agafa del seu encapsulat. Per tant, les soldadures dels cables del termopar hauran d’estar el més a prop possible del propi AD597. La estabilitat de la temperatura de l’encapsulat indica la sensibilitat del voltatge de sortida als canvis de temperatures ambientals o del dispositiu. Típicament de 0,02 ºC/ºC sobre la gamma de temperatures recomanada. La Taula 2 és una llista dels voltatges ideals de la sortida en funció de la temperatura centígrada del termopar o la temperatura de l’encapsulat amb una referència de 60ºC.

Page 12: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

12

Temperatura del termopar

ºC

Voltatge tipus K

mV

Sortida AD597

mV

Temperatura del termopar

ºC

Voltatge tipus K

mV

Sortida AD597

mV -200 -5.891 -1446 500 20.640 5066 -180 -5.550 -1362 520 21.493 5276 -160 -5.141 -1262 540 22.346 5485 -140 -4.669 -1146 560 23.198 5694 -120 -4.138 -1016 580 24.050 5903 -100 -3.553 -872 600 24.902 6112 -80 -2.920 -717 620 25.751 6321 -60 -2.243 -551 640 26.599 6529 -40 -1.527 -375 660 27.445 6737 -20 -0.777 -191 680 28.288 6944 -10 -0.392 -96 700 29.128 7150 0 0 0 720 29.965 7355 10 0.397 97 740 30.799 7560 20 0.798 196 750 31.214 7662 25 1.000 245 760 31.629 7764 30 1.203 295 780 32.455 7966 40 1.611 395 800 33.277 8168 50 2.022 496 820 34.095 8369 60 2.436 598 840 34.909 8569 80 3.266 802 860 35.718 8767

100 4.095 1005 880 36.524 8965 120 4.919 1207 900 37.325 9162 140 5.733 1407 920 38.122 9357 160 6.539 1605 940 38.915 9552 180 7.338 1801 960 39.703 9745 200 8.137 1997 980 40.488 9938 220 8.938 2194 1000 41.269 10130 240 9.745 2392 1020 42.045 10320 260 10.560 2592 1040 42.817 10510 280 11.381 2794 1060 43.585 10698 300 12.207 2996 1080 44.439 10908 320 13.039 3201 1100 45.108 11072 340 13.874 3406 1120 45.863 11258 360 14.712 3611 1140 46.612 11441 380 15.552 3817 1160 47.356 11624 400 16.395 4024 1180 48.095 11805 420 17.241 4232 1200 48.828 11985 440 18.088 4440 1220 49.555 12164 460 18.938 4649 1240 50.276 12341 480 19.788 4857 1250 50.633 12428

Taula 2: Tensió de sortida en funció de la temperatura del termopar*

* Temperatura ambient +60 ºC, Vs= -5V, +15V

Page 13: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

13

En la següent Figura 7 es pot veure la configuració de l’AD597 i el termopar.

Figura 7: Configuració AD597

3.1.5. Comprovació del circuit Per calibrar el circuit s’han pres valors des dels 0 ºC (congelació de l’aigua) i 100 º C (punt d’ebullició de l’aigua). Aquests valors han estat comparats amb la taula de valors que recomana el fabricant obtenint un resultat satisfactori. En la Figura 8 es pot observar la tendència que segueix la tensió en funció de la temperatura, en la línea de color taronja estan reflexats els valors reals del nostre circuit. Els punts blancs sense línea són els valors teòrics que ens marca el fabricant. TemperaturaºC 100 95 90 85 80 75 70 65 60 55 50 45 40 35 30 25 20 15 10 5 0

mV mesurats 998 946 883 832 783 730 689 623 579 536 490 432 388 340 296 243 197 152 99 47 0

mV fabricant 1005 - - - 802 - - - 598 - 495 - 395 - 295 - 196 - 97 - 0

0

200

400

600

800

1000

1200

10095908580757065605550454035302520151050

Temperatura

mV

0

200

400

600

800

1000

1200

Valors reals

Valors teòrics

Figura 8: Gràfic de la temperatura en funció de la tensió

Page 14: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

14

3.1.6. Condicionament del Senyal per al Conversor Analògic Digital Com es mostra en el circuit de la Figura 7 i en la Taula 2, podem treballar amb temperatures des de -200 ºC fins a +1250 ºC, això comporta treballar amb tensions que van des dels -1,5 V a 12,4 V. En el nostre cas i a efectes de comprovació i calibració de la senyal, treballarem amb valors reals que aniran des dels 0 ºC fins a 100 ºC. Aquests valors s’estableixen gràcies a la propietat que té l’aigua de començar a gelar-se a 0 ºC i arrencar el bull a 100ºC. Aquest marge de valors no limitarà el projecte, ja que l’únic realitzat és que el circuit respon correctament a aquest marges de temperatura. Més endavant en el punt 3.3.5 veurem que em de treballar amb marges de tensió que aniran de 0 V a +5 V. Com que les temperatures negatives estan representades per tensions negatives, es fa un ajust a la senyal establint els 0 ºC a 1 V, així els valors superiors a 1 V representaran temperatures positives i els inferiors temperatures negatives. El primer pas és el de crear el senyal que es sumarà a la sortida del AD597, aquest senyal serà de 1 V com s’ha establert en el paràgraf anterior.

Figura 9: Circuit que treu +1 V estabilitzat

Per obtenir 1 V crearem un divisor de tensió a partir dels 5 V d’alimentació.

88

22115

KR

KV

RVV

POT

POT

=

=− (2)

Utilitzarem un potenciòmetre multivolta de 10 KΩ per poder ajustar de forma manual el valor de la sortida. Per estabilitzar la sortida s’utilitza un seguidor de senyal.

Page 15: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

15

Per sumar el senyal constant de 1 V a la senyal del AD597 utilitzarem un sumador inversor.

Figura 10: Sumador inversor

VADVoK

ADK

VKVo

RV

RVRVo F

159722

597221

22

2

2

1

1

+=−

+=−

+=−

(3)

L’últim pas per deixar la senyal preparada, és el d’invertir de nou la senyal –Vo que surt del sumador inversor. S’utilitza un amplificador inversor amb un índex d’amplificació de 1.

Figura 11: Amplificador inversor

INRRsi

IN

FIN VVo

RR

VVo INF −= →−= = (4)

Aquest senyal ja compleix els paràmetres establerts al inici del apartat.

Page 16: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

16

3.2. Control

3.2.1. Introducció Per realitzar el control de temperatura, s’han agafat elements senzills i de fàcil abast, com són un ventilador per refrigerar la unió del termopar i una bombeta (resistència) de 220 Vca per escalfar-la. Aquests elements son simbòlics, ja que el projecte és de caire docent, però si no ho fos podríem utilitzar elements industrials, en el lloc dels actuals.

3.2.2. Implantació del Sistema Adoptat En el punt 3.3, s’observarà que el ventilador i la resistència estan governats per la senyal TTL de la sortida d’un microcontrolador. En un primer moment es decideix realitzar l’actuació del microcontrolador sobre la resistència i el ventilador per mitjà de dos relés de 5 Vcc. Això no ha estat possible, la suma de càrregues que es creava quan es connectaven les dues bobines dels relés i el ventilador sobre el microcontrolador, provocava un reset sobre el circuit, impossibilitant aquesta opció. Aquest problema ha estat corregit col·locant un condensador en l’alimentació del microcontrolador, aquest condensador actua com a filtre, impedint variacions en l’entrada de l’alimentació del microcontrolador. Un altre problema que es detectava era que al entrar en funcionament la resistència (220 Vca) es creava una inductància entre els dos relés, amb la conseqüència de que al circular un corrent altern en un relé provocava que es connectes el del seu costat. Per solucionar aquest problema s’ha decidit connectar la resistència per mitjà d’un triac, aquest triac està governat pel microcontrolador gràcies a un optoacoblador encarregat d’aïllar les masses dels dos circuits i evitant interferències entre ells.

Figura 12: Configuració del relé i el triac amb el microcontrolador

Page 17: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

17

Per no carregar tant la sortida del microcontrolador i que aquest no hagi de suportar el corrent d’inducció de la bobina del relé, s’ha utilitzat un transistor com amplificador a la sortida del microcontrolador. El ventilador va connectat entre la sortida marcada com ventilador i massa. Entre els punts fase i neutre hi ha 220 Vca. Els senyals d’entrada Control TTL són els senyals de control del microcontrolador sobre la resistència i el ventilador.

3.3. Microcontrolador

3.3.1. Introducció Sens dubte, una de les parts més importants d’aquest projecte és el microcontrolador. Un dels requisits que ha de tenir aquest és que la seva programació es dugui a terme utilitzant el llenguatge de programació C. Per fer la tria del microcontrolador, s’han analitzat les opcions que ofereixen les sèries PIC de Microchip i la sèrie 8051, els quals treuen fabricants com Philips, Siemens i Intel entre d’altres. Després d’analitzar els editors i compiladors de codi de les dues famílies, la elecció ha estat d’utilitzar la sèrie PIC de Microchip, ja que disposa d’una gran varietat de xips, un bon ventall de compiladors de C i està àmpliament extés, podent trobar moltíssima informació.

3.3.2. Exigències a Complir El microcontrolador ha de ser capaç del següent:

- Tenir un mínim de memòria on emmagatzemar el programa que s’estarà executant. - Tenir com a mínim una entrada analògica per on llegir la temperatura del termopar. - Poder realitzar una comunicació amb el PC. - Sortides digitals per poder actuar sobre els elements físics.

3.3.3. L’elecció del Microcontrolador Entre tota la gamma de microcontroladors amb arquitectura oberta que ofereix la marca Microchip, podem fer bàsicament quatre separacions: gamma baixa, gamma mitja, gamma alta i gamma millorada. Aquests dispositius, des de la gamma baixa fins la millorada tenen una progressió de prestacions, de complexitat i de preu. Ara hem de buscar l’element que més s’ajusti a les nostres necessitats. En la Taula 3 hi ha una petita representació dels principals microcontroladors de cada gamma amb les seves característiques més importants. Per començar la tria del microcontrolador he hagut de triar la gamma com a primer pas. La gamma baixa no té USART per poder fer còmodament les comunicacions sèrie amb un PC, així que per aquest motiu l’he descartat. La gamma alta tot i tenir els recursos de la gamma mitja, també té una quantitat de pins molt més elevada que els de gamma mitja i aquest fet encareix considerablement l’aparell.

Page 18: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

18

Per últim, entre els dispositius de gamma mitja s’ha fet la selecció d’un microcontrolador amb USART, portes E/S digitals i un conversor A/D de 10 bits per poder implementar-hi l’entrada del senyal de l’adaptador de tensió del termopar.

Taula 3: Taula amb les principals característiques dels microcontroladors

Mod

el

Màx

ima

freq

üènc

ia d

’ope

raci

ó (M

Hz)

FLA

SH

RA

M

EE

PRO

M

Tem

porit

zado

rs

Can

als

conv

erso

r A/D

(10

bits

)

Com

para

dors

Mòd

uls

CC

P/PW

M

Com

unic

ació

sèr

ie U

SAR

T/SC

I

MSS

P-SP

I I2C

PSP

- Por

t par

al·le

l

Font

s d’

inte

rrup

ció

Ran

g de

vol

tatg

e

Pins

E/S

Pins

de

d’en

caps

ulat

PIC 18F242 40 16k 768 256 4 5 --- 2 Sí Sí No 17 2,5/6 22 28 PIC 18F252 40 32k 1536 256 4 5 --- 2 Sí Sí No 17 2,5/6 22 28 PIC 18F442 40 16k 768 256 4 8 --- 2 Sí Sí Sí 18 2,5/6 33 40

Gam

ma

Mill

orad

a

PIC 18F452 40 32k 1536 256 4 8 --- 2 Sí Sí Sí 18 2,5/6 33 40 PIC 17C42 25 2k 232 No 4 No --- Sí 1 Sí Sí 11 2,5/6 33 40 Gamma

alta PIC 17C44 25 8k 454 No 4 No --- Sí 1 Sí Sí 11 2,5/6 33 40 PIC 12F675 20 1k 64 128 2 4 1 No No No No 7 2/5,5 6 8 PIC 16F627 20 1k 224 128 3 No 2 1 1 No No 10 2/5,5 16 18 PIC 16F628 20 2k 224 128 3 No 2 1 1 No No 10 2/5,5 16 18 PIC 16F870 20 2k 128 64 3 5 --- 1 1 No No 10 2/5,5 22 28 PIC 16F871 20 2k 128 64 3 8 --- 1 1 No Sí 11 2/5,5 33 40 PIC 16F872 20 2k 128 64 3 5 --- 1 No Sí No 10 2/5,5 22 28 PIC 16F873 20 4k 192 128 3 5 --- 2 1 Sí No 13 2/5,5 22 28 PIC 16F874 20 4k 192 128 3 8 --- 2 1 Sí Sí 14 2/5,5 33 40 PIC 16F876 20 8k 368 256 3 5 --- 2 1 Sí No 13 2/5,5 22 28

Gam

ma

Mitj

a

PIC 16F877 20 8k 368 256 3 8 --- 2 1 Sí Sí 14 2/5,5 33 40 PIC 16C54 20 512 25 --- 1 No --- No No No No No 2/6,5 12 18 PIC 16C55 20 1k 25 --- 1 No --- No No No No No 2/6,5 20 28 PIC 16C56 20 1k 25 --- 1 No --- No No No No No 2/6,5 12 18 PIC 16C57 20 2k 72 --- 1 No --- No No No No No 2/6,5 20 28 PIC 16C58 20 2k 73 --- 1 No --- No No No No No 2/6,5 12 18 PIC 16C58B 40 2k 73 --- 1 No --- No No No No No 2/6,5 12 18

Gam

ma

baix

a

PIC 16C508 40 512 25 --- 1 No --- No No No No No 2/6,5 6 8

Page 19: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

19

Un cop s’ha elegit el tipus de microcontrolador, també cal triar el tipus d’encapsulat. Aquest també ha de seguir els criteris de simplicitat que anem aplicant a tot el projecte. Així doncs, tenim que el millor encapsulat és el que ens permet manipular, fer proves sobre la Protoboard o sobre una placa microperforada i facilitar la soldadura d’una forma senzilla. L’encapsulat de 28 patilles PDIP, com el que es mostra en la Figura 13, serà el que s’utilitzarà.

Figura 13: Informació d’encapsulat PDIP

Page 20: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

20

3.3.4. Circuit Oscil·lador (rellotge principal) Tots els microcontroladors disposen d’un circuit oscil·lador que genera un ona quadrada d’alta freqüència que configura els impulsos de rellotge fets servir en la sincronització de totes les operacions del sistema. Generalment, el circuit de rellotge està incorporat al microcontrolador i només es necessiten uns pocs elements externs per seleccionar i estabilitzar la freqüència de treball. Aquests components solen consistir en un cristall de quars juntament amb components passius (el nostre cas) o bé amb un ressonador ceràmic o bé una xarxa R-C. Augmentar la freqüència de rellotge suposa disminuir el temps en que s’executen les instruccions però per contrapartida augmenta el consum del circuit. S’ha de muntar algun d’aquests tipus de hardware i a part s’ha d’indicar al microcontrolador quin és el mode de funcionament. Això es fa mitjançant una paraula de configuració només accessible quan s’està programant el dispositiu i que es troba a la direcció 0xFFFh. Aquesta paraula només té quatre bits configurables com es mostra en la figura i en el nostre cas hi accedim mitjançant el software, que té les eines per configurar el totes aquestes opcions.

- - - - - - - - CP WDTE FOSC1 FOSC0

Figura 14: Bits de configuració del PIC 16f876.

FOSC1:FOSC0: Selecciona el tipus d’oscil·lador 11 = RC Oscil·lador de baix cost 10 = HS Oscil·lador d’alta velocitat (8 – 20 MHz) 01 = XT Oscil·lador estándar (100 kHz – 4 MHz) 00 = LP Oscil·lador de baix consum (32 kHz – 300 kHz) WDTE: Bit d’activació del “watchdog” 1 = WDT activat 0 = WDT desactivat CP: Bit de protecció de codi 1 = codi no protegit 0 = codi protegit

Page 21: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

21

Per implementar el rellotge utilitzarem l’oscil·lador estàndard (100 KHz - 4 MHz). Per dur-ho a terme es seguirà el següent esquema, Figura 15.

Figura 15: Esquema del microcontrolador amb la configuració de l’oscil·lador

Amb aquesta senzilla configuració, el microcontrolador està preparat per entrar en funcionament.

3.3.5. Conversor Analògic Digital El conversor analògic-digital és l’eina que transforma el senyal analògic del AD597 Vout de la Figura 7 a un nombre digital. En un primer moment, es plantejava la idea de realitzar aquesta conversió amb un circuit integrat independent del microcontrolador, el MCP3204, aquest és un ADC (Analog Digital Converter) de 12 bits, no obstant es va descartar aquesta opció ja que el microcontrolador ja tenia el seu propi ADC, i tot i que és de 10 bits, considerem que és una precisió suficient per les necessitats, a més a més el fet de tenir el converso integrat simplifica considerablement el disseny i programació del projecte. El ADC del 16F876 consta d’un màxim de 5 entrades de conversió amb un rang de 0 a 5 V o 3 entrades on podem configurar el rang. La configuració que s’utilitza és la 0 a 5 V, aquesta configuració es duu a terme mitjançant dues paraules de control. Resolució del conversor de 10 bits treballant amb un marge de 0 a 5 V.

Vbits

bitsVV

0048828125,02

1010

5010

=⋅−

(5)

voltunitats

Vu

Vbits

8,2045

.10245

10== (6)

Aproximadament 5 mV, sabent que el AD597 dona marges de 10 mV/ºC (punt 3.1.4) podem afirmar que aquesta resolució ens és suficient.

Page 22: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

22

Figura 16: Esquema de la configuració d’entrades del ADC

REGISTE ADCON0 ADREÇA 1Fh

ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/!DONE - ADON bit 7-6 ADCS1:ADCS0 Bits de selecció del rellotge del conversor 00 = Freqüència oscil·lador/2 01 = Freqüència oscil·lador/8 10 = Freqüència oscil·lador/32 11 = Rellotge de l’oscil·lador RC intern del conversor bit 5-3 CHS2:CHS0 Selector dels canals analògics 000 = Canal 0, (RA0/AN0) 001 = Canal 1, (RA1/AN1) 010 = Canal 2, (RA2/AN2) 011 = Canal 3, (RA3/AN3) 100 = Canal 4, (RA4/AN4) bit 2 GO/!DONE Bit indicador de l’estat de la conversió si ADON = 1 1 = Conversió A/D en progrés 0 = Conversió A/D no està en progrés bit 1 - bit 0 ADON Estat del conversor 1 = Mòdul conversor A/D està operatiu 0 = Mòdul conversor A/D està en estat latent

Page 23: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

23

REGISTE ADCON1 ADREÇA 9Fh

ADFM - - - PCFG3 PCFG2 PCFG1 PCFG0 bit 7 ADFM Mode de mostrar el resultat 1 = Alineat a la dreta. Els 6 bits de més pes de l’adreça alta seran 0 0 = Alineat a l’esquerra. Els 6 bits de menys pes de l’adreça baixa seran 0 bit 6-4 - bit 3-0 PCFG3:PCFG0 Configuració del port

PCFG3:PCFG0

AN4 RA5

AN3 RA3

AN2 RA2

AN1 RA1

AN0 RA0 Vref+ Vref-

0000 A A A A A VDD VSS 0001 A Vref+ A A A RA3 VSS 0010 A A A A A VDD VSS 0011 A Vref+ A A A RA3 VSS 0100 D A D A A VDD VSS 0101 D Vref+ D A A RA3 VSS 011X D D D D D VDD VSS 1000 A Vref+ Vref- A A RA3 RA2 1001 A A A A A VDD VSS 1010 A Vref+ A A A RA3 VSS 1011 A Vref+ Vref- A A RA3 RA2 1100 A Vref+ Vref- A A RA3 RA2 1101 D Vref+ Vref- A A RA3 RA2 1110 D D D D A VDD VSS 1111 D Vref+ Vref- D A RA3 RA2

A = Entrada analògica D = Entrada/Sortida digital

Figura 17: Model de l’entrada analògica

Page 24: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

24

En l’esquema del conversor de la Figura 17 podem observar que el condensador CHOLD és el que mesura el nivell de la tensió a mesurar. Podem observar que el temps de càrrega d’aquest condensador està directament lligat a la impedància d’entrada RS i al interruptor RSS. La impedància del interruptor RSS varia en funció del voltatge VDD. Per tant el fabricant ens aconsella que la impedància màxima del circuit d’entrada sigui de 10 kΩ, perquè si la impedància disminueix també ho farà el temps d’adquisició. TACQ: Temps d’adquisició de dades TC: Temps de càrrega del condensador TCOFF: Coeficient de temperatura

( )( )[ ]CsCaTemperaturTs

TTTT

C

COFFCAMPACQ

/º05,0º252 µµ −++=

++= (7)

( ) ( )( ) ( )

s

InkkkpF

InRRRCT SSSICHOLDC

µ47,16

0004885,01071120

1024/1

=Ω+Ω+Ω−=

++= (8)

( )( )[ ]

s

CsCCssTACQ

µ

µµµ

72,19

/º05,0º25º5047,162

=

−++= (9)

3.3.6. Comunicació RS-232 La comunicació entre microcontrolador i ordinador es realitza a través del bloc USART (Universal Synchronous Asynchronous Receiver Transmitter) o també anomenat SCI (Serial Communications Interface). Tot i que l’USART pot estar configurat com un sistema full duplex o half duplex en el nostre cas serà half duplex per limitacions del transmissor i receptor de fibra òptica on s’aprofundirà en l’apartat 3.4. A continuació hi ha una breu descripció del funcionament del protocol de comunicació. La línia que transmet les dades en sèrie està inicialment a nivell alt. Al començar la transferència s’envia un bit a 0 ó bit d’inici. Darrere seu aniran els 8 bits de dades a transmetre (que en ocasions poden ser 7, 6 ó 5): aquests bits estan espaiats per un interval fix i precís lligat a la velocitat de transmissió que s’està fent servir. Després d’aquests bits de dades pot venir o no un bit de paritat (que en ocasions pot ser un bit o dos bits), finalment hi ha 2 bits a 1 que són els bits de parada o de stop. La presència de bits d’inici i de parada permet la sincronització de l’estació emissora amb la receptora, fent que els rellotges vagin a la par. A l’hora de transmetre els bytes de dades, uns darrere uns altres, existeix una flexibilitat en els temps i, d’aquí que aquests tipus de comunicacions es considerin asíncrones tot i que la transmissió dels 8 bits de dades, d’un byte, és realment síncrona.

Page 25: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

25

Figura 18: Representació de trames amb el format RS-232

3.3.7. Programació La realització del programa s’ha realitzat mitjançant un complet software per programar microcontroladors de la família Microchip. Aquest software és el PCW Compiler versió 3.094, una completa i potent eina amb llibreries per a la majoria de microcontroladors de la marca Microchip i una completa col·lecció de funcions amb C per facilitar la programació. Per altra banda també disposa d’un senzill menú on seguint una sèrie de passos es crea la capçalera del programa amb tota la informació necessària per al microprocessador:

- Tipus de microcontrolador. - Freqüència i tipus de rellotge. - Elecció i configuració dels timers. - Configuració de les comunicacions, RS232, I2C, etc… - Configuració d’entrades analògiques. - Interrupcions. - Drivers, memòries, LCDs, etc…

Per bolcar el programa al microcontrolador s’ha usat el programa ICPROG. Aquest és un senzill programa de software lliure que gràcies a un programador ens volca el fitxer *.HEX a la memòria FLAX del microcontrolador. La utilització dels dos programes es troba explicada en els Annexes.

8 7 6 5 4 3 2 1

LSB MSB

bit d’inici bits de dades bit/s de paritat opcionals bits stop

...

Page 26: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

26

3.3.8. Estructura del Programa – Diagrama de Flux

Inici

Inicialitzacions

Mirar si buffer ≠ 0

Llegir buffer d’entrada

Refrescar les sortides en funció de les dades del

buffer

SI

NO

IRQ1

PROGRAMA PRINCIPAL

Deshabilitar interrupcions

Llegir ADC

Si buffer sortida ≠ 0

Escriure dades al buffer de sortida

Habilitar interrupcions

END IRQ1

SI

NO

INTERRUPCIÓ CADA 10 ms

Page 27: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

27

El programa consta d’una estructura principal que s’executa per sempre des de que s’alimenta el microcontrolador fins que es desconnecta, l’únic control que pot fer l’usuari al microcontrolador es a través del PC al qual està connectat. L’objectiu de la funció principal és la d’estar mirant constantment que és el que rep pel buffer d’entrada, el buffer d’entrada és una la part de la memòria on s’emmagatzema les dades que envia l’ordinador. En funció de les dades rebudes activa o desactiva una sèrie de sortides que seran les que posaran en marxa o aturaran el ventilador i la resistència. Cada 2 ms s’executa una interrupció, que com molt bé defineix el nom, interromp la funció principal. En aquesta interrupció es marquen les ordres que s’hauran d’executar en la funció principal un cop finalitzi la interrupció. Aquestes ordres consisteixen en mirar el buffer de sortida, el buffer de sortida és la part de memòria on el microprocessador deixa les dades que s’han d’enviar al PC, si el buffer de sortida està buit el microcontrolador llegirà l’entrada analògica de on rep les dades del termopar, i les escriurà al buffer de sortida. Un cop acabat, tornarà a executar la funció principal que s’executa per defecte.

3.4. Sistemes de Comunicacions

3.4.1. Introducció Com s’ha vist en la Memòria Descriptiva, el projecte consta d’un apartat de comunicacions. Aquesta comunicació uneix el PC amb el microcontrolador per mitjà d’una comunicació de fibra òptica.

3.4.2. Fibra Òptica – Components i Tipus El nucli: està fet de silici, quarz fos o plàstic – és el medi on es propaguen les ones òptiques. Diàmetre: 50 o 62,5 µm perla fibra multimode i 9 µm per la fibra monomode. La Funda Òptica: Generalment dels mateixos materials que el nucli però amb additius que confinen les ones òptiques al nucli. El revestiment de protecció: En general està fabricat de plàstic i assegura la protecció mecànica de la fibra.

Funda exterior 900 µ Funda de silicona 400 µ Funda primaria 250 µ Nucli òptic 62,5 µ Funda óptica 125 µ

Figura 19: Detall del cable de fibra òptica

Page 28: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

28

Els tipus de fibra òptica son els següents: Fibra Monomode Potencialment aquesta és la fibra que oferta més capacitat de “transport” d’informació. Té un ample de banda de l’ordre dels 100 GHz/km. Els fluids més grans d’informació s’aconsegueixen amb aquesta fibra, per contra també és la més difícil d’implantar. En la Figura 20 es pot veure que els raigs tan sols poden tenir una trajectòria que segueix l’eix de la fibra, per aquest fet s’anomena monomode (mode de propagació, o camí del raig de llum, únic). Són fibres que tenen el diàmetre del nucli del mateix ordre de magnitud de la longitud d’ona dels senyals òptics que transmeten, es a dir, d’uns 5 a 8 mm. Si el nucli està constituït d’un material amb un índex de refracció molt diferent al de la coberta, llavors es parla de fibres monomode i índex escalat. Els elevats fluxos que es poden aconseguir constitueixen el principal avantatge de les fibres monomode tot i que les seves petites dimensions impliquen un treball delicat i porten dificultats de connexió que encara no es dominen perfectament.

Figura 20: Detall fibra monomode

Fibra Multimode d’Índex Gradient Les fibres multimode d’índex gradient gradual tenen una pas de banda que arriba fins als 500 MHz per kilòmetre. El seu principi de funcionament es basa en que l’índex de refracció a l’interior del nucli no és únic i decrementa quan es desplaça del nucli a la coberta. Els raigs lluminosos es troben enfocats cap a l’eix de la fibra, com s’observa a la Figura 21. Aquestes fibres permeten reduir la dispersió entre els diferents modes de propagació a través del nucli de la fibra. La fibra multimode d’índex gradient gradual de tamany 62,5/125 µm (diàmetre del nucli / diàmetre de la coberta) està normalitzat, però es poden trobar altres tipus de fibres multimode d’índex escalat 100/140 µm.

Figura 21: Detall fibra multimode d’índex gradient

85 µm

R

N 125 µm

Ie

T T

Is

Variació de la refracció

Secció de la fibra òptica

Impuls d’entrada Trajecte dels raigs Impuls de sortida

R

N 125 µm

50 µm

Ie

T T

Is

Variació de la refracció

Secció de la fibra òptica

Impuls d’entrada Trajecte dels raigs Impuls de sortida

Page 29: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

29

Fibra Multimode d’Índex Escalat Les fibres multimode d’índex escalat estan fabricades en base de vidre, amb una atenuació de 30 dB/km, o plàstic, amb una atenuació de 100 dB/km. Té un pas de banda que arriba fins els 40 MHz per kilòmetre. En aquestes fibres el nucli està compost per un material uniforme amb un índex de refracció clarament superior al de la coberta que l’envolta. El pas des del nucli fins la coberta comporta per tant una variació brutal de l’índex, d’aquí el seu nom, índex escalat.

Figura 22: Detall fibra multimode d’índex escalat

3.4.3. Connectors En la Taula 3 es mostren alguns tipus de connectors òptics i també s’enumera algunes de les seves especificacions. Cada tipus de connector té els seus punts forts. Per exemple, els connectors ST són una bona opció per instal·lacions fàcils de camp; el connector SC oferta una excel·lent densitat d’embalatge i un bon disseny capaç d’aguantar sense malmetres les connexions i desconnexions; el connector FC té una anella flotant que proporciona un bon aïllament mecànic, aquest connector és l’usat en el projecte.

Connectors Pèrdues del connector dB Tipus de fibra Aplicacions

FC

0,50 – 1,00 dB 0,20 dB SM / MM Datacom Telecomunicacions

FDDI

0,20 – 0,70 dB 0,20 dB SM / MM Reds de fibra òptica

LC

0,15 dB (SM) 0,10 dB (MM) 0,20 dB SM / MM Interconnexions

d’alta densitat

MT Array

0,30 – 1,00 dB 0,25 dB SM / MM Interconnexions d’alta densitat

SC

0,20 – 0,45 dB 0,10 dB SM / MM Datacom

SC dúplex

0,20 – 0,45 dB 0,10 dB SM / MM Datacom

ST

0,40 dB (SM) 0,50 dB (MM)

0,40 dB (SM) 0,20 dB (MM) SM / MM Sistemes de red de

Seguretat Taula 4: Connectors de fibra òptica

100 µm

R

N 140 µm

Ie

T T

Is

Variació de la refracció

Secció de la fibra òptica

Impuls d’entrada Trajecte dels raigs Impuls de sortida

Page 30: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

30

3.4.4. L’elecció de la Fibra Òptica En un principi es desitjava utilitzar una fibra capaç de suportar comunicacions multimode, ja que aquest tipus de fibra permet realitzar en un sol cable comunicacions en els dos sentits. Finalment per qüestions econòmiques es va decidir utilitzar una fibra monomode, ja que els transmissors i receptors per aquest tipus de fibra son significativament mes barats que els de tipus multimode. Per realitzar la connexió s’han utilitzat dos transmissors HFBR-1402 i dos receptors HFBR-2402 de la marca Agilent Technologies. Utilitzen connectors del tipus FC, com s’ha vist en l’apartat anterior. El cable és de fibra monomode amb un diàmetre de nucli de 50 µm i una funda òptica de 125 µm. Aquests elements ens permeten treballar amb marges de tensió compatibles amb el sistema TTL utilitzat per microcontrolador.

Figura 23: Detall del connector FC

Disseny per realitzar l’acoblament de la lògica de 5 MBd

Figura 24: Esquema circuits transmissor i receptor

Page 31: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

31

Si la resistència R1 de la Figura 24 és de 70,4 Ω, la intensitat IF és de 48 mA, aquesta corrent entra al transmissor HFBR-14x4 garantint un acoblament perfecte amb el receptor HFBR – 24x2; un cable de fibra òptica de 62,5/125 µm i un radi d’acció entre 0 i 1750 metres amb un índex de 5 MBd i una distorsió típicament de menys del 25 % de l’ample del pols de dades. Si es desitgés economitzar l’energia del sistema es podria canviar la resistència per una de 115 Ω, reduint el corrent d’entrada al transmissor a 30 mA. En el nostre projecte i ficant-ho d’exemple calcularem una R1 per una distància de 400 m. En el següent quadre mirarem quina intensitat d’entrada necessita el transmissor per una distància de 400 m. En la Figura 25 està marcat amb color vermell la línia que ens mostra com per una distància aproximada de 400 m correspon una intensitat de 15 mA aproximadament.

Figura 25: Taula per calcular els límits amb un cable 62.5 / 125 µm

Ω=−

=−

= 23315

5,151 mA

VVI

VVccR

F

F (10)

En la taula de la Figura 25 no s’assumeix cap tipus de pèrdua en la línea, en el cas d’haver alguna empalmada en el cable de fibra òptica existeixen altres taules per poder calcular les pèrdues addicionals.

Page 32: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

32

3.4.5. Temps de Resposta A continuació es mostra un petit resum dels temps de resposta dels dispositius de fibra òptica.

Parameter Symbol Min. Typ. Max. Units Conditions Optical Power Budget with 50/125 µm fiber OPB50 4.2 9.6 dB HFBR – 14X4 / 24X2

NA=0.2 Date Rate Synchronous dc 2 MBd Asynchronous dc 2.5 MBd Propagation delay LOW to HIGH tPLH 72 ns Propagation delay HIGH to LOW tPHL 46 ns System Pulse Width Distortion tPLH -tPHL 26 ns

TA = 25 ºC PR = -21 dBm Fiber cable length = 1 m

Taula 5: Temps de resposta donats pel fabricant

3.5. Software

3.5.1. Introducció Per realitzar el software s’ha tingut molt en compte poder utilitzar un format flexible, que quan s’executi no agafi el control absolut de sistema operatiu, un sistema de programació compatible amb el sistema operatiu Microsoft Windows. Per dur-ho a terme s’ha utilitzat el Visual Studio.net programant amb Visual Basic. Visual Basic és un llenguatge amb una programació basada a events i orientada a objectes, amb un mode gràfic instituïu i fàcil d’utilitzar. Un programa basat amb events, és un programa que sempre està en espera, es troba esperant alguna acció de l’usuari per iniciar l’acció corresponent.

Page 33: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

33

3.5.2. El Programa

Figura 27: Finestra principal del programa A continuació es detalla una petita explicació del programa dissenyat per a la visualització i control. COM Setup: En aquest bloc es pot seleccionar el port que s’utilitzarà per realitzar les connexions, també es seleccionarà el Baudrate (velocitat de comunicació) i el temps de Timeout (Temps en que es considera la comunicació perduda). Frequency: Aquest és un dels blocs claus del programa, a simple vista es realitza una selecció, aquesta selecció marca la unitat de temps que esperarà el programa per realitzar enquestes de temperatura al hardware. Aquest bloc és important perquè és l’únic punt en que el programa no necessita una acció de l’usuari per agafar el control sobre sí mateix i realitzar les accions oportunes, en aquest cas llegir les dades del buffer d’entrada i realitzar les conversions necessàries. Temp Control Limits: En aquest punt es defineixen els valors per realitzar el control de temperatura. Si la casella Activate està seleccionada, el sistema de control intentarà igualar la temperatura del termopar a la marcada pel setpoint en la casella Ctrl. La casella error marca el marge de tolerància inferior que es dona al sistema. Input: Es mostren tres apartats. DEC marca el número enviat des del microcontrolador, aquest número és la conversió analògica-digital que realitza el ADC. V és el valor equivalent de la tensió que entra al ADC. ºC és el valor, en graus centígrads, de la temperatura del termopar.

Page 34: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

34

En el cercle negre de la Figura 27 hi ha tres opcions que es poden marcar, la primera i la segona Hot i Fan són marcadors que si estan seleccionats i el programa no està en automàtic, s’activaran la resistència i el ventilador respectivament. La tercera opció Create historical, si està marcada crea un fitxer Excel *.xls on hi ha resumit l’històric dels valors agafats a partir de la seva activació.

3.5.3. Gravació d’Històrics El programa és capaç de crear un fitxer en Excel, el nom d’aquest fitxer és la data i l’hora en que es crea per exemple “02-06-2006 – 20.20.58.xls” aquest fitxer queda gravat en la direcció “c:\Historic\ “ en aquest fitxer queda reflectida la data, el moment, la temperatura, el valor la tensió i el valor digital. El format de la data és mes, dia i any. DATA HORA TEMPERATURA TENSIÓ Nº DIGITAL02/06/2006 20:20:58 67 1,715 35002/06/2006 20:20:58 67 1,7101 34902/06/2006 20:20:58 67 1,7101 34902/06/2006 20:20:59 67 1,6954 34602/06/2006 20:20:59 67 1,7101 34902/06/2006 20:20:59 67 1,7101 34902/06/2006 20:20:59 67 1,7101 349

Frequència: 250 mili-secondsTaula 6: Esquema del fitxer d’exemple 02-06-2006 – 20.2.58.xls

3.5.4. Estructura dels Objectes Principals

Inici

Inicialitzar port comunicacions

Si crear fitxer

Fi

Crear fitxer

SI

NO

Inici

Tancar port comunicacions

Si fitxer obert

Fi

Tancar fitxer

SI

NO

Start Stop Event programat pel rellotge

Inici event

Fi event

Si sistema arrencat

SI

NO Transmetre

Rebre

Refrescar variables

Redibuixar gràfics

Page 35: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

35

3.6. Alimentació

3.6.1. Introducció Com es pot observar en la Figura 3 tots els blocs necessiten una alimentació per al seu funcionament. Hi ha blocs que necessiten alimentacions simètriques, en especial els que tenen amplificadors operacionals i que necessiten tensions de ±15 Vcc. El projecte es divideix en quatre plaques PCB, una placa central que conté el microcontrolador i la majoria de components, una altra per fer l’enllaç de fibra òptica a senyal elèctric, i finalment dos plaques on hi ha el ventilador i la resistència i termopar. Tot i que aquestes últimes plaques s’alimenten de la placa principal, i les altres dos s’alimenten d’una senzilla font d’alimentació de ± 15 Vcc i 1 A màxim de càrrega. A l’entrada de l’alimentació de cada placa hi ha el circuit adient per fer l’adaptació necessària a 5 V en la majoria de casos.

3.6.2. Esquema de la Font d’Alimentació

Figura 27: Esquema font alimentació simètrica

Page 36: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

36

4. Plànols Índex Plànols Esquema General ................................................................................................. 001 Esquema Conversor Fibra Òptica ........................................................................ 002 PCB Font d’Alimentació – sobre ......................................................................... PCB001 PCB Font d’Alimentació – sota ........................................................................... PCB002 PCB Placa Microcontrolador – sobre .................................................................. PCB003 PCB Placa Microcontrolador – sota ..................................................................... PCB004 PCB Placa Termopar – sobre ............................................................................... PCB005 PCB Placa Termopar – sota ................................................................................. PCB006 PCB Placa d’entrada/sortida PC – sobre .............................................................. PCB007 PCB Placa d’entrada/sortida PC – sota ................................................................ PCB008 PCB Placa Control de Temperatura ..................................................................... PCB009

Page 37: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

FASE

NEUTRE

+15 Vcc

-15 Vcc

Senyal Termopar

(..Alumini)

+15 Vcc-5 Vcc

FASE

(..Crom)

Term. no con.

+15 Vcc

Senyal Termopar

Term. no con.

+5 Vcc+15 Vcc

NEUTRE

-15 V

-15 V-15 V

+15 V

+ 5 Vcc

VCC

VCC

+5 V+15 V

VCC

+5 V

+15 V

+ 5 Vcc

-15 V

+5 V

-15 V

+ 5 Vcc

+ 5 Vcc

- 5 Vcc

+5 V

Title

Size Document Number Rev

Date: Sheet o f

001 1

ESQUEMA GENERAL

A3

1 1Sunday, March 12, 2006

CIRCUIT SENYAL TERMOPAR

CIRCUIT FONT D'ALIMENTACIÓ

+47 uF

+22 uF

-

+

LM741

3

26

74

&

U6

75451

1A1

1B2

2A6

2B7

1Y 3

2Y 5

GND 4Vcc8

330

-

+

LM741

3

26

74

1K

-

+

LM741

3

26

74

100 nF

BTA06TRIAC

560

INTERMITENT

RELE

35

412

100K

330

10 nF330

- +

DIODE BRIDGE

330

150K

+2200 uF

U5

AD597

-IN1

+IN2

HYS3

FB4

GND5 -ALM 6+ALM 7

Vout 8-V 9+V 10

16F876

!MCLR/Vpp1

RA0/AN02

RA1/AN13

RA2/AN2/Vref-4

RA3/AN3/Vref+5

RA4/T0CKI6

RA5/AN5/SS7

Vss8

OSC1/CLKOUT9

OSC2/CLKOUT10

Vdd20

Vss19

RB7/PGD 28

RB6/PGC 27

RB3/PGM 24

RB2 23

RB1 22

RB0/INT 21

RB5 26

RB4 25

RC7/RX/DT 18

RC6/TX/CK 17

RC5/SDO 16

RC4/SDI/SDA 15

RC3/SCK/SCL 14

RC2/CCP1 13

RC1/T1OSI/CCP2 12

RC0/T1OSO/T1CKI 11

VENTILADOR

MOTOR AC

22K

RESISTÈNCIA

HF

BR

-24X

2R

EC

EIV

ER

RX1

HFBR-24X2

N.C.1

Vcc (5V)2

COMMON3

N.C.4

N.C.5

DATA6

COMMON7

N.C.8

Q1BP139

8K8

MOC 3021

10 nF

100 nF

-

+

LM741

3

26

74

7815

VIN1 VOUT 3

330

NO CON.

BOMBETA

220 Vca

100K

+2200 uF

22K

4 MHz

VENTILADOR

7815

VIN1 VOUT 3

2K2

330

100 nF

460

56K

HF

BR

-14X

XT

RA

NS

IMT

TE

R

TX1

HFBR-14XX

N.C.1

ANODE2

CATHODE3

N.C.4

N.C.5

ANODE6

ANODE7

N.C.8

150K

8K8

1M

+47 uF

1K

22K

+10 uF

7915

VIN2 VOUT 3

100 nF

10 nF

56K

+100 uF

220 Vca 18 Vca

100K

Page 38: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5 5

4 4

3 3

2 2

1 1

DD

CC

BB

AA

+5

Vcc

+1

5 V

cc

+ 5

Vcc

+ 5

Vcc

+ 5

Vcc

Titl

e

Siz

eD

ocu

me

nt

Nu

mb

erR

ev

Da

te:

She

eto

f

002

1

CO

NV

ER

SO

R F

IBR

A O

PT

ICA

- R

S23

2

A

11

Sa

turd

ay,

Ma

rch

11,

2006

U8

B

7404

34

10

nF

10

nF

HFBR-14XXTRANSIMTTER

TX1

HF

BR

-14X

X

N.C

.1

AN

OD

E2

CA

TH

OD

E3

N.C

.4

N.C

.5

AN

OD

E6

AN

OD

E7

N.C

.8

8K8

U7

MA

X23

2

C1+

1

C1-

3

C2+

4

C2-

5

V+

2

V-

6

R1O

UT

12

R2O

UT

9

T1I

N11

T2I

N10

R1I

N13

R2I

N8

T1O

UT

14

T2O

UT

7

10

nF

P1

CO

NN

EC

TO

R D

B9

594837261

10

nF

HFBR-24X2RECEIVER

RX

1

HF

BR

-24X

2

N.C

.1

Vcc

(5V

)2

CO

MM

ON

3

N.C

.4

N.C

.5

DA

TA

6

CO

MM

ON

7

N.C

.8

&

U6

7545

11A1

1B2

2A6

2B7

1Y3

2Y5

GN

D4

Vcc

8

+1

0 u

F

U8

A

7404

12

560

7815

VIN

1V

OU

T3

1K

10

nF

Page 39: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB001 1

FONT ALIMENTACIÓ

1 1Saturday, March 11, 2006

Page 40: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB002 1

FONT ALIMENTACIÓ

1 1Saturday, March 11, 2006

Page 41: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB003 1

PCB MICROCONTROLADOR

1 1Saturday, March 11, 2006

Page 42: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB004 1

PCB MICROCONTROLADOR

1 1Saturday, March 11, 2006

Page 43: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB005 1

PCB TERMOPAR

1 1Saturday, March 11, 2006

Page 44: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB006 1

PCB TERMOPAR

1 1Saturday, March 11, 2006

Page 45: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB007 1

CONVERSOR FIBRA ÒPTICA - RS232

1 1Saturday, March 11, 2006

Page 46: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB008 1

CONVERSOR FIBRA ÒPTICA - RS232

1 1Saturday, March 11, 2006

Page 47: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

5

5

4

4

3

3

2

2

1

1

D D

C C

B B

A A

Title

Size Document Number Rev

Date: Sheet o f

PCB009 1

PCB PLACA CONTROL

1 1Saturday, March 11, 2006

Page 48: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

48

5. Pressupost

5.1. Material Font Alimentació Unitats Descripció Preu Subtotal 1.- 1 Transformador de toma mitja 220 / 15-0-15 / I>2A 5,99 5,99 € 2.- 1 Pont de díodes B380C – I500M 0,39 0,39 € 3.- 2 Díodes 1N4001 0,029 0,06 € 4.- 2 Condensadors 2200 mF 0,142 0,28 € 5.- 4 Condensadors 100 kF 0,027 0,11 € 6.- 2 Condensadors 47 mF 16V 0,086 0,17 € 7.- 1 C.I. 7815 0,48 0,48 € 8.- 1 C.I. 7915 0,49 0,49 € 9.- 2 C.I. 7805 0,63 1,26 € 10.- 1 C.I. 741 0,54 0,54 € 11.- 1 Sócal 8 pins tornejat 0,105 0,11 € 12.- 1 Resistència 100K ? 0,02 0,02 € 13.- 2 Resistències 150K ? 0,02 0,04 € TOTAL 9,94 € El preu total del material de la font d’alimentació simètrica de ±15 Vcc suma un total de nou euros i noranta-quatre cèntims.

5.2. Material Microcontrolador Unitats Descripció Preu Subtotal 1.- 1 Microcontrolador 16F876 9,71 9,71 € 2.- 1 Sócal 28 pins 0,456 0,46 € 3.- 2 Condensadors 22 pF 0,027 0,05 € 4.- 1 Condensador 100 µF 0,086 0,09 € 5.- 1 Cristall de quars 4 MHz 0,6 0,60 € 6.- 1 Resistència 1 K ? 0,02 0,02 € 7.- 3 Resistències 330 ? 0,02 0,06 € 8.- 3 Leds 0,142 0,43 € TOTAL 11,41 € El preu total del material del circuit del microcontrolador suma un total d’onze euros i quaranta-un cèntims.

Page 49: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

49

5.3. Material Circuit Termopar Unitats Descripció Preu Subtotal 1.- 1 Termopar tipus K 18 18,00 € 2.- 1 C.I. AD597 16,27 16,27 € 3.- 1 C.I. 741 0,54 0,54 € 4.- 1 C.I. 747 0,92 0,92 € 5.- 2 Condensadors 10 nF 0,027 0,05 € 6.- 1 Condensador 22 µF 0,086 0,09 € 7.- 1 Led 0,142 0,14 € 8.- 1 Sócal 8 pins tornejat 0,105 0,11 € 9.- 1 Sócal 14 pins tornejat 0,228 0,23 € 10.- 1 Potenciòmetre multivolta 10 K? 0,35 0,35 € 11.- 1 Resistència 1M? 0,02 0,02 € 12.- 1 Resistència 330 ? 0,02 0,02 € 13.- 2 Resistències 100 K? 0,02 0,04 € 14.- 1 Resistència 2K2 ? 0,02 0,02 € 15.- 2 Resistències 56 K? 0,02 0,04 € 16.- 3 Resistències 22 K ? 0,02 0,06 € TOTAL 36,90 € El preu total del material del circuit d’adaptació de la senyal del termopar suma un total de trenta-sis euros i noranta cèntims.

5.4. Material Control Unitats Descripció Preu Subtotal 1.- 1 Relé 5 Vcc 4,26 4,26 € 2.- 1 Triac BTA06 1,57 1,57 € 3.- 1 Optoacoblador MOC3021 1,35 1,35 € 4.- 1 Sócal 6 pins tornejat 0,097 0,10 € 5.- 1 Resistència 1 K? 0,02 0,02 € 6.- 1 Resistència 330 ? 0,02 0,02 € 7.- 1 Resistència 470 ? 0,02 0,02 € 8.- 1 Transistor BD139 0,56 0,56 € 9.- 1 Ventilador 15 Vcc 3,27 3,27 € 10.- 1 Resistència 220 Vca 4,40 4,40 € TOTAL 15,57 €

El preu total del material del circuit de control suma un total de quinze euros i cinquanta-set cèntims.

Page 50: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

50

5.5. Materials Comunicacions Fibra Òptica Unitats Descripció Preu Subtotal 1.- 2 Kits Fibra òptica HFBR-0400 60,96 121,92 € 2.- 2 Condensadors 0,1 mF 0,027 0,05 € 3.- 5 Condensador 10 mF 0,086 0,43 € 4.- 2 Resistències 1 K? 0,02 0,04 € 5.- 2 Resistències 650 ? 0,02 0,04 € 6.- 2 Potenciòmetres multivolta 1K? 0,35 0,70 € 7.- 2 C.I. DS75451 0,86 1,72 € 8.- 1 C.I. 7404 0,48 0,48 € 9.- 1 C.I. MAX232 1,14 1,14 € 10.- 2 Sócal 8 pins tornejat 0,105 0,21 € 11.- 1 Sócal 14 pins tornejat 0,228 0,23 € 12.- 1 Sócal 16 pins tornejat 0,256 0,26 € 13.- 2 Jumpers 0,119 0,24 € 14.- 1 Connector DB9 per PCB 0,655 0,66 € 15.- 1 Cable sèrie 1,75 1,75 € TOTAL 129,86 € El preu total del material dels circuits de comunicació per fibra òptica suma un total de cent vint-i-nou euros i vuitanta-sis cèntims.

5.6. Disseny PCBs Hores Descripció Preu Subtotal 1.- 3 Disseny PCB principal 30 90 € 2.- 1,5 Disseny PCB circuit del termopar 30 45 € 3.- 2 Disseny PCB circuit de comunicació del PC 30 60 € 4.- 1 Disseny PCB circuit de control de temperatura 30 30 € TOTAL 225 € El preu total del disseny de les plaques PCB suma un total de dos-cents vint-i-cinc euros.

Page 51: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

51

5.7. Disseny i Programació de Software Hores Descripció Preu Subtotal 1.- 30 Programació del microcontrolador 30 900€ 2.- 50 Programació software per PC 30 1500 € TOTAL 2400 € El preu total del disseny i programació del software del projecte suma dos mil quatre-cents euros.

5.8. Pressupost d’Execució Material Descripció Subtotal 1.- Font Alimentació 9,94 € 2.- Microcontrolador 11,41 € 3.- Circuit Termopar 36,90 € 4.- Circuit Control 15,57 € 5.- Comunicació Fibra Òptica 129,86 € 6.- Disseny PCBs 225 € 7.- Disseny i Programació de Software 2400 € TOTAL 2828,68 € El preu del pressupost d’execució material del projecte és de dos mil vuit-cents vint-i-vuit euros i seixanta-vuit cèntims.

5.9. Pressupost d’Execució del Contracte Descripció Subtotal 1.- Pressupost d’Execució Material 2828,68 € 2.- Benefici Industrial 6 % 169,72 € 3.- I.V.A. 16 % 452,59 € TOTAL 3443,99 € El preu total del pressupost d’execució del contracte és de tres mil quatre-cents quaranta-tres euros i noranta-nou cèntims.

Page 52: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

52

6. Annexes

6.1. Codi

6.1.1. Microcontrolador

6.1.1.1.P16F876.c // S O F T W A R E M I C R O C O N T R O L A D O R // Aplicació pel control de temperatura // Aplicació per enviar i rebre dades via Sèrie RS232 // Data: 23/02/2006 // Microcontrolador : 16F876 // OBJECTIU: // Realitzar la comunicació entre un Pc i un sistema d’anàlisi i control de temperatura // Configuració de la comunicació sèrie: 9600 bauds, 16 bits, sense paritat //Capçalera------------------------------------------------------------------------------- #include <16F876.h> #device ADC=10 #use delay(clock=4000000) #fuses XT,NOWDT #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7) //Variables Globals----------------------------------------------------------------------- int16 contador_timer=0, // Contador pel temps mínim del ADC contador_led=0; // Contador intermitència del led int1 start_adc=FALSE, // Estat del conversor analògic-digital Transmit_Buffer_Empty=FALSE, // Estat del buffer de sortida Led_On=FALSE; // Estat del Led intermitent long dataout=0x0000; // Variable del valor de conversió analógica-digital char port=0x40; // Variable control sortides del microcontrolador //Interrupció que s’executara cada 2 ms*************************************************** #int_TIMER2 TIMER2_isr() contador_timer++; contador_led++; if (contador_timer>=5) // Control de temps per al conversor ADC contador_timer=0; start_adc=TRUE; if (contador_led>=250) if(!Led_On) Led_On=TRUE; else Led_On=FALSE; contador_led=0; // Interrupció que s’executa quan el buffer de sortida està buit************************** #int_TBE TBE_isr() disable_interrupts(INT_TBE); Transmit_Buffer_Empty=TRUE; // Funció que força la sortida del led intermitent---------------------------------------- void palpitacio(void) if (Led_On) output_high(pin_b3); else output_low(pin_b3);

Page 53: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

53

// Funció que llegeix el buffer d’entrada i determina l’actuació sobre les sortides------- void llegir_Rx(void) char datain=0x00; if (kbhit()) (char)datain=getc(); if (datain==52) port=0x40; // Tot desconnectat if (datain==50) port=0xE0; // Connectar ventilador if (datain==49) port=0x10; // Connectar resistència if (datain==51) port=0xB0; // Connectar ventilador i resistència // Funció de transmisió (omplir el buffer de sortida)------------------------------------- void transmetre_Tx(void) if (Transmit_Buffer_Empty) printf("%Lu",(dataout)); enable_interrupts(INT_TBE); Transmit_Buffer_Empty=FALSE; // Test del funcionament del ventilador i la resistència---------------------------------- void inicialitzacio(void) int i; output_b(0xE0); for(i=0;i<=8;i++) delay_ms(250); output_b(0x10); for(i=0;i<=8;i++) delay_ms(250); output_b(0x40); // Programa principal===================================================================== void main() inicialitzacio(); setup_adc_ports(RA0_ANALOG); setup_adc(ADC_CLOCK_INTERNAL); setup_spi(FALSE); setup_counters(RTCC_INTERNAL,RTCC_DIV_2); setup_timer_1(T1_DISABLED); setup_timer_2(T2_DIV_BY_4,32,16); setup_ccp1(CCP_OFF); setup_ccp2(CCP_OFF); enable_interrupts(INT_TIMER2); enable_interrupts(INT_TBE); enable_interrupts(global); while(TRUE) char port2=0xFF; if (start_adc) disable_interrupts(global); dataout=read_adc(); transmetre_Tx(); start_adc=FALSE; enable_interrupts(global); llegir_Rx(); palpitacio(); if (port!=port2) output_b(port); // Actuació sobre sortides si hi ha hagut algun canvi port2=port; output_b(port);

Page 54: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

54

6.1.1.2.16F876.h // Standard Header file for the PIC16F876 device // #device PIC16F876 *=16 #nolist // I/O definitions for INPUT() and OUTPUT_xxx() #define PIN_A0 40 #define PIN_A1 41 #define PIN_A2 42 #define PIN_A3 43 #define PIN_A4 44 #define PIN_A5 45 #define PIN_B0 48 #define PIN_B1 49 #define PIN_B2 50 #define PIN_B3 51 #define PIN_B4 52 #define PIN_B5 53 #define PIN_B6 54 #define PIN_B7 55 #define PIN_C0 56 #define PIN_C1 57 #define PIN_C2 58 #define PIN_C3 59 #define PIN_C4 60 #define PIN_C5 61 #define PIN_C6 62 #define PIN_C7 63 // Useful defines #define FALSE 0 #define TRUE 1 #define BYTE int #define BOOLEAN short int #define getc getch #define getchar getch #define puts(s) printf(s); putchar(13); putchar(10); #define putc putchar // Constants used for RESTART_CAUSE() #define WDT_FROM_SLEEP 0 #define WDT_TIMEOUT 8 #define MCLR_FROM_SLEEP 16 #define NORMAL_POWER_UP 24 // Constants used for SETUP_COUNTERS() #define RTCC_INTERNAL 0 #define RTCC_EXT_L_TO_H 32 #define RTCC_EXT_H_TO_L 48 #define RTCC_DIV_2 0 #define RTCC_DIV_4 1 #define RTCC_DIV_8 2 #define RTCC_DIV_16 3 #define RTCC_DIV_32 4 #define RTCC_DIV_64 5 #define RTCC_DIV_128 6 #define RTCC_DIV_256 7 #define WDT_18MS 8 #define WDT_36MS 9 #define WDT_72MS 10 #define WDT_144MS 11 #define WDT_288MS 12 #define WDT_576MS 13 #define WDT_1152MS 14 #define WDT_2304MS 15 #define L_TO_H 0x40 #define H_TO_L 0 #define RTCC_ZERO 0x0B20 // Used for ENABLE/DISABLE INTERRUPTS #define INT_RTCC 0x0B20 // Used for ENABLE/DISABLE INTERRUPTS #define RB_CHANGE 0x0B08 // Used for ENABLE/DISABLE INTERRUPTS

Page 55: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

55

#define INT_RB 0x0B08 // Used for ENABLE/DISABLE INTERRUPTS #define EXT_INT 0x0B10 // Used for ENABLE/DISABLE INTERRUPTS #define INT_EXT 0x0B10 // Used for ENABLE/DISABLE INTERRUPTS #define GLOBAL 0x0BC0 // Used for ENABLE/DISABLE INTERRUPTS // Constants used for Timer1 and Timer2 #define T1_DISABLED 0 #define T1_INTERNAL 5 #define T1_EXTERNAL 7 #define T1_EXTERNAL_SYNC 3 #define T1_CLK_OUT 8 #define T1_DIV_BY_1 0 #define T1_DIV_BY_2 0x10 #define T1_DIV_BY_4 0x20 #define T1_DIV_BY_8 0x30 #byte TIMER_1_LOW= 0x0e #byte TIMER_1_HIGH= 0x0f #define T2_DISABLED 0 #define T2_DIV_BY_1 4 #define T2_DIV_BY_4 5 #define T2_DIV_BY_16 6 #byte TIMER_2= 0x11 #define INT_TIMER1 0x8C01 // Used for ENABLE/DISABLE INTERRUPTS #define INT_TIMER2 0x8C02 // Used for ENABLE/DISABLE INTERRUPTS // Constants used for SETUP_CCP1() #define CCP_OFF 0 #define CCP_CAPTURE_FE 4 #define CCP_CAPTURE_RE 5 #define CCP_CAPTURE_DIV_4 6 #define CCP_CAPTURE_DIV_16 7 #define CCP_COMPARE_SET_ON_MATCH 8 #define CCP_COMPARE_CLR_ON_MATCH 9 #define CCP_COMPARE_INT 0xA #define CCP_COMPARE_RESET_TIMER 0xB #define CCP_PWM 0xC #define CCP_PWM_PLUS_1 0x1c #define CCP_PWM_PLUS_2 0x2c #define CCP_PWM_PLUS_3 0x3c long CCP_1; #byte CCP_1 = 0x15 #byte CCP_1_LOW= 0x15 #byte CCP_1_HIGH= 0x16 #define INT_CCP1 0x8C04 // Used for ENABLE/DISABLE INTERRUPTS // Constants used for SETUP_CCP2() long CCP_2; #byte CCP_2 = 0x1B #byte CCP_2_LOW= 0x1B #byte CCP_2_HIGH= 0x1C #define INT_CCP2 0x8D01 // Used for ENABLE/DISABLE INTERRUPTS // Constants used in SETUP_SSP() #define SPI_MASTER 0x20 #define SPI_SLAVE 0x24 #define SPI_L_TO_H 0 #define SPI_H_TO_L 0x10 #define SPI_CLK_DIV_4 0 #define SPI_CLK_DIV_16 1 #define SPI_CLK_DIV_64 2 #define SPI_CLK_T2 3 #define SPI_SS_DISABLED 1 #define INT_SSP 0x8C08 // Used for ENABLE/DISABLE INTERRUPTS #define SPI_SAMPLE_AT_END 0x8000 #define SPI_XMIT_L_TO_H 0x4000 #define INT_RDA 0x8C20 // Used for ENABLE/DISABLE INTERRUPTS #define INT_TBE 0x8C10 // Used for ENABLE/DISABLE INTERRUPTS // Constants used for SETUP_ADC_PORTS() #define NO_ANALOGS 0x86 // None

Page 56: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

56

#define ALL_ANALOG 0x80 // RA0 RA1 RA2 RA3 RA5 RE0 RE1 RE2 Ref=Vdd #define ANALOG_RA3_REF 0x81 // RA0 RA1 RA2 RA5 RE0 RE1 RE2 Ref=RA3 #define A_ANALOG 0x82 // RA0 RA1 RA2 RA3 RA5 Ref=Vdd #define A_ANALOG_RA3_REF 0x83 // RA0 RA1 RA2 RA5 Ref=RA3 #define RA0_RA1_RA3_ANALOG 0x84 // RA0 RA1 RA3 Ref=Vdd #define RA0_RA1_ANALOG_RA3_REF 0x85 // RA0 RA1 Ref=RA3 #define ANALOG_RA3_RA2_REF 0x88 // RA0 RA1 RA5 RE0 RE1 RE2 Ref=RA2,RA3 #define ANALOG_NOT_RE1_RE2 0x89 // RA0 RA1 RA2 RA3 RA5 RE0 Ref=Vdd #define ANALOG_NOT_RE1_RE2_REF_RA3 0x8A // RA0 RA1 RA2 RA5 RE0 Ref=RA3 #define ANALOG_NOT_RE1_RE2_REF_RA3_RA2 0x8B // RA0 RA1 RA5 RE0 Ref=RA2,RA3 #define A_ANALOG_RA3_RA2_REF 0x8C // RA0 RA1 RA5 Ref=RA2,RA3 #define RA0_RA1_ANALOG_RA3_RA2_REF 0x8D // RA0 RA1 Ref=RA2,RA3 #define RA0_ANALOG 0x8E // RA0 #define RA0_ANALOG_RA3_RA2_REF 0x8F // RA0 Ref=RA2,RA3 // Constants used for SETUP_ADC() #define ADC_OFF 0 #define ADC_CLOCK_DIV_2 1 #define ADC_CLOCK_DIV_8 0x41 #define ADC_CLOCK_DIV_32 0x81 #define ADC_CLOCK_INTERNAL 0xc1 #define ADC_DONE 0x8C40 // Used for ENABLE/DISABLE INTERRUPTS #define INT_ADC 0x8C40 // Used for ENABLE/DISABLE INTERRUPTS #define INT_EEPROM 0x0B10 // Used for ENABLE/DISABLE INTERRUPTS #list

Page 57: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

57

6.1.2. Pc

6.1.2.1.Form1.vb Visual Studio ens permet crear el disseny gràfic del nostre programa d’una forma casi intuïtiva, inserint els objectes i botons simplement arrossegant-los amb el ratolí. Aquest procés de creació de la pantalla gràfica així com altres procediments del propi programa generen una sèrie de codis i de fitxers dels quals no se’n fa referència en aquest informe. ‘ S O F T W A R E P C ‘ Aplicació pel control de temperatura ‘ Aplicació per enviar i rebre dades via Sèrie RS232 ‘ Aplicació per crear un històric a partir de les dades rebudes pel port sèrie ‘ Aplicació gràfica ‘ Data: 23/02/2006 ‘ Ordinador personal amb Windows XP ‘ OBJECTIU: ‘ Realitzar la comunicació entre el Pc i un sistema d’anàlisi i control de temperatura ‘ Configuració de la comunicació sèrie: 9600 bauds, 16 bits, sense paritat ‘ Variables Globals del programa---------------------------------------------------------- Public Class Form1 Inherits System.Windows.Forms.Form Private Initialized As Boolean = False Private miComPort As Integer ‘ Variable del port RS232 Private enableTx As Bolean ‘ Habilitar la transmissió Private enableRx As Bolean ‘ Habilitar la recepció Private WithEvents moRS232 As Rs232 Private Delegate Sub CommEventUpdate(ByVal source As Rs232, ByVal mask As Rs232.EventMasks) Dim Taula_Valors(1200) As Integer ‘ Taula amb els valors del gràfic Dim Taula_Mitja(4) As Integer ‘ Taula que fa la mitja de la temeratura Dim point_1 As Point ‘ Els punts que dibuixen el gràfic Dim point_2 As Point Códi generat pel Dissenyador de Windows Forms de Visual Studio... ‘ Funció quan es pitja el botó Start----------------------------------------------------- Private Sub Button_Start_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Start.Click moRS232 = New Rs232 Dim hour As Integer Dim minute As Integer Dim second As Integer Dim file_name As String Dim var As Integer Me.SelectMiComPort() Try With moRS232 ‘ Configuració del port sèrie .Port = Me.miComPort .BaudRate = Int32.Parse(Me.TBBaudrate.Text) .DataBit = 8 .StopBit = Rs232.DataStopBit.StopBit_1 .Parity = Rs232.DataParity.Parity_None .Timeout = Int32.Parse(Me.TBTimeout.Text) End UIT

Page 58: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

58

Me.ListBox1.Items.Clear() ‘ Mostrar per pantalla l’estat del port Me.ListBox2.Items.Clear() ListBox1.Items.Add(" COM PROPIETIES") ListBox1.Items.Add("------------------------------------------") ListBox1.Items.Add("Port: " & moRS232.Port.ToString) ListBox1.Items.Add("Baudrate: " & moRS232.BaudRate.ToString) ListBox1.Items.Add("Data bit: " & moRS232.DataBit.ToString) ListBox1.Items.Add(moRS232.StopBit.ToString) ListBox1.Items.Add(moRS232.Parity.ToString) ListBox1.Items.Add("Timeout:" & moRS232.Timeout.ToString) moRS232.Open() moRS232.Dtr = True moRS232.Rts = True Me.TimerFrequency.Enabled = True ‘Habilitar el rellotge If (Me.CheckBoxHistorical.Checked = True) Then ‘ Crear el fitxer d’històric hour = DatePart(DateInterval.Hour, Now) minute = DatePart(DateInterval.Minute, Now) second = DatePart(DateInterval.Second, Now) file_name = "c:\Historic\" + DateString + " - " & Val(hour) & "." & Val(minute) & "." & Val(second) & ".xls" FileOpen(1, file_name, OpenMode.Append) PrintLine(1, "DATA" & Chr(9) & "HORA" & Chr(9) & "TEMPERATURA" & Chr(9) & "TENSIÓ" & Chr(9) & "Nº DIGITAL") End If Me.CheckBoxHistorical.Enabled = False Me.GBFrequency.Enabled = False Me.GBCOMSetup.Enabled = False Tx() Rx() For var = 0 To 1199 Step +1 ‘ Inicialitzar taula gràfica a 0 ºC Me.Taula_Valors(var) = 207 Me.Taula_Mitjes(var) = 207 Next For var = 0 To 3 Step +1 ‘ Inicialitzar taula temperatura a 0 ºC Me.Taula_Mitja(var) = 205 Next Catch ex As Exception ‘ Port sèrie no inicialitzat Finally Me.Button_Stop.Enabled = moRS232.IsOpen Me.Button_Start.Enabled = Not moRS232.IsOpen Me.enableTx = moRS232.IsOpen Me.enableRx = moRS232.IsOpen Me.CheckBoxActivate.Enabled = moRS232.IsOpen End Try End Sub ‘ Funció quan es pitja el botó Stop------------------------------------------------------ Private Sub Button_Stop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Stop.Click Dim Frequency_val As String ‘ Deshabilitar rellotge Me.CheckBoxFan.Checked = False Me.CheckBoxMotor.Checked = False Me.CheckBoxActivate.Checked = False Me.CheckBoxActivate.Enabled = False moRS232.Write(4) moRS232.Close() ‘ Tancar port sèrie Me.Button_Stop.Enabled = moRS232.IsOpen Me.Button_Start.Enabled = Not moRS232.IsOpen Me.enableRx = moRS232.IsOpen Me.enableTx = moRS232.IsOpen Me.TimerFrequency.Enabled = False If (Me.CheckBoxHistorical.Checked = True) Then ‘ Tancar el fitxer d’històric If (Me.RB1.Checked = True) Then Frequency_val = "1 second" If (Me.RB10.Checked = True) Then Frequency_val = "10 seconds" If (Me.RB250.Checked = True) Then Frequency_val = "250 mili-seconds" If (Me.RB500.Checked = True) Then Frequency_val = "500 mili-seconds" If (Me.RB60.Checked = True) Then Frequency_val = "1 minute" PrintLine(1, "Frequència: " & Frequency_val.ToString) FileClose(1) End If

Page 59: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

59

Me.CheckBoxHistorical.Enabled = True Me.GBFrequency.Enabled = True Me.GBCOMSetup.Enabled = True End Sub

‘ Funció de la transmissió pel port sèrie------------------------------------------------ Private Sub Tx() Dim sTx As String 'Transmissió moRS232.PurgeBuffer(Rs232.PurgeBuffers.TxClear) If (Me.CheckBoxActivate.Checked = False) Then sTx = 4 ' Desactivar-ho tot If (Me.CheckBoxMotor.Checked = True And Me.CheckBoxFan.Checked = False) Then sTx = 1 ' Activar la resistència If (Me.CheckBoxMotor.Checked = False And Me.CheckBoxFan.Checked = True) Then sTx = 2 ' Activar el motor If (Me.CheckBoxMotor.Checked = True And Me.CheckBoxFan.Checked = True) Then sTx = 3 Else ' Control de la temperatura sTx = 4 If (Me.TBInputºC.Text < (Me.TBCtrl.Text - Me.TBerror.Text)) Then sTx = 1 If (Me.TBInputºC.Text > (Me.TBCtrl.Text + Me.TBerror.Text)) Then sTx = 2 End If moRS232.Write(sTx) End Sub ‘ Funció de la recepció pel port sèrie--------------------------------------------------- Private Sub Rx() Dim aux As Integer Dim var As String 'Recepció moRS232.PurgeBuffer(Rs232.PurgeBuffers.RXClear) Try moRS232.Read(4) ‘ Llegir 16 bits d’informació Me.TBInputHEX.Text = moRS232.InputStreamString() Me.TBVolts.Text = Me.TBInputHEX.Text * 0.0049 ‘ Paràgraf 3.3.5 pàgina 21 Catch ex As Exception ‘ Missatge si la comunicació té error Me.ListBox2.Items.Insert(0, ("Error occurred " & ex.Message & "data feched: ")) End Try Show() End Sub ‘ Funció del rellotge-------------------------------------------------------------------- Private Sub TimerFrequency_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerFrequency.Tick Dim aux As Integer Dim Valor As Integer If (Me.enableTx) Then Tx() ‘ Iniciar transmissió If (Me.enableRx) Then Rx() ‘ Iniciar recepció Me.ListBox2.Items.Insert(0, Me.TBInputHEX.Text) Me.Taula_Valors(1199) = (Me.TBInputHEX.Text) ' Valors del gràfic For aux = 0 To 1198 Step +1 Me.Taula_Valors(aux) = Me.Taula_Valors(aux + 1) Next Me.Taula_Mitja(3) = (Me.TBInputHEX.Text) ' Mitja dels 4 valors de temperatura For aux = 0 To 3 Step +1 Valor = Valor + Me.Taula_Mitja(aux) Next Me.TBInputºC.Text = (((Valor / 4) - 205) * 0.487) If (Me.CheckBoxHistorical.Checked = True) Then ‘ Gravar al fitxer d’històric PrintLine(1, DateString & Chr(9) & TimeString & Chr(9) & Me.TBInputºC.Text & Chr(9) & Me.TBVolts.Text & Chr(9) & Me.TBInputHEX.Text) End If Grafics_linia() ‘ Refrescar gràfic End Sub

Page 60: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

60

Com Reconvertir el valor digital a temperatura? La variable Me.TBInputºC representa el valor de tensió del termopar, per poder-lo representar s’ha de seguir el següents passos. 1.- En la variable tenim la suma dels últims 4 valors agafats de temperatura. En farem la mitja aritmètica. La raó de fer aquesta mitja és la de tenir un valor de temperatura amortiguat davant les interferències que pugui rebre la senyal. 2.- El valor que tenim, no és real, recordem que en el punt 3.1.6 Condicionament del Senyal per al Conversor Analògic Digital li hem sumat un volt. El valor numèric d’un volt és 204,8 com també s’ha vist en el punt 3.3.5 Conversor Analògic Digital. Per arrodoniment establim 205. 3.- Trobar el factor de conversió

Gràfic equivalent al de la Figura 8 – pàg. 13

487.0205100 ==

⋅=

m

xmy (11)

Seguint el tres passos obtenim la fórmula que hem d’aplicar per representar la temperatura.

Me.TBInputºC.Text = (((Valor / 4) - 205) * 0.487)

100 ºC

205

0 x

y

m Pendent

Page 61: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

61

‘ Funció encarregada de dibuixar el requadre on s’imprimirà el gràfic-------------------- Private Sub Grafics_taula(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint Dim oGraphics As Graphics = Me.CreateGraphics Dim mypen1 As New Pen(Color.Black, 2) Dim mypen2 As New Pen(Color.Black, 1) Dim mypen3 As New Pen(Color.Red, 4) Dim i As Integer Dim top As Int16 = 45 Dim right As Int16 = 1260 Dim left As Int16 = 60 Dim bottom As Int16 = 645 Dim medium_hor As Int16 = 660 Dim medium_ver As Int16 = bottom - 120 oGraphics.FillRectangle(New SolidBrush(Color.LightSteelBlue), New Rectangle(left, top, right - left, bottom - top)) ‘ Dibuixar fons gràfic oGraphics.DrawRectangle(New Pen(Color.Black, 3), New Rectangle(left, top, right - left, bottom - top)) ‘ Dibuixar recuadre mypen1.DashStyle = Drawing2D.DashStyle.Dash oGraphics.DrawLine(mypen1, left, medium_ver, right, medium_ver) ‘ Líea horit. mypen2.DashStyle = Drawing2D.DashStyle.Dash For i = right To left Step -100 ‘ Línies verticals oGraphics.DrawLine(mypen2, i, 645, i, 45) Next mypen3.DashStyle = Drawing2D.DashStyle.Dash ‘ Nivells de temperatura oGraphics.DrawLine(mypen3, left - 5, medium_ver + 118, left + 2, medium_ver + 118) oGraphics.DrawLine(mypen3, left - 5, medium_ver + 59, left + 2, medium_ver + 59) oGraphics.DrawLine(mypen3, left - 5, medium_ver, left + 2, medium_ver) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 59, left + 2, medium_ver - 59) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 118, left + 2, medium_ver - 118) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 177, left + 2, medium_ver - 177) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 237, left + 2, medium_ver - 237) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 296, left + 2, medium_ver - 296) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 355, left + 2, medium_ver - 355) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 414, left + 2, medium_ver - 414) oGraphics.DrawLine(mypen3, left - 5, medium_ver - 473, left + 2, medium_ver - 473) End Sub

‘ Funció encarregada de dibuixar el gràfic sobre la taula-------------------------------- Private Sub Grafics_linia() Dim oGraphics As Graphics = Me.CreateGraphics Dim mypen As New Pen(Color.Gray, 1) Dim var As Integer Dim top As Int16 = 45 ‘ Marges del gràfic Dim right As Int16 = 1260 Dim left As Int16 = 60 Dim bottom As Int16 = 645 Dim medium_hor As Int16 = 660 Dim medium_ver As Int16 = bottom - 120 Grafics_taula(Nothing, Nothing) ‘ Redibuixar la taula point_2 = New Point(right, medium_ver) For var = 1199 To 0 Step -1 ‘ Representar la tendència point_1 = point_2 If ((bottom - CInt(Me.Taula_Valors(var)) * 0.59) > 45) Then point_2 = New Point(var + left, bottom - CInt(Me.Taula_Valors(var)) * 0.58) Else point_2 = New Point(var + left, top) End If oGraphics.DrawLine(mypen, point_2, point_1) Next End Sub

Page 62: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

62

‘ Altres funcions complementaries--------------------------------------------------------- ‘ Funció que dibuixa el rellotge per pantalla--------------------------------------------- Private Sub TimerRellotge_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerRellotge.Tick Me.TBTime.Text = TimeString Me.TBDate.Text = DateString End Sub ‘ Funció que comprova el port sèrie------------------------------------------------------- Private Sub SelectMiComPort() If (Me.RBCOM1.Checked = True) Then Me.miComPort = 1 Else Me.miComPort = 2 End If End Sub ‘ Funció que s’executa quan es pitja el botó d’Exit--------------------------------------- Private Sub Button_Exit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Exit.Click If (Me.enableTx) Then Me.Button_Stop_Click(Nothing, Nothing) Me.Close() End Sub ‘ Funció que s’executa quan es pitja el Test COM – Es realitza un quequeig del port sèrie- Private Sub Button_Test_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Test.Click Me.SelectMiComPort() Try If Rs232.IsPortAvailable(1) Then MessageBox.Show("Port available", "Port test", MessageBoxButtons.OK, MessageBoxIcon.Information) Else MessageBox.Show("Port NOT available", "Port test", MessageBoxButtons.OK, MessageBoxIcon.Error) End If Catch ex As Exception MessageBox.Show("Port test failed", "Port test", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End Sub ‘ Funció que s’executa quan s’activa el ventilador---------------------------------------- Private Sub CheckBoxFan_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBoxFan.CheckedChanged If (Me.enableTx) Then Tx() End Sub ‘ Funció que s’xecuta quan s’activa el motor---------------------------------------------- Private Sub CheckBoxMotor_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBoxMotor.CheckedChanged If (Me.enableTx) Then Tx() End Sub ‘ Fi del fitxer Form1.vb------------------------------------------------------------------ End Class

Page 63: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

63

6.2. PCW Compiler En aquest punt s’explica com començar a realitzar el codi de programació per al microcontrolador 16F876 amb el PCW Compiler, tot i que aquest programa està dissenyat per a qualsevol microcontrolador de la marca Microchip. Quan obrim el programa ens apareix la finestra buida amb el següent menú.

Figura 28: Pantalla d’inici del PCW Compiler

Per crear un projecte amb el 16F876 el primer que em d’assegurar que en la finestra sota del menú (Edit – Opcions) ens apareix Microchip 14 bit, tal i com es mostra en la figura anterior.

Figura 29: Procés per crear un nou projecte

Seleccionarem en el menú superior: Project → New → PIC Wizard

Page 64: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

64

Figura 30: Nom del projecte

A continuació s’obra un finestra en la que podem seleccionar el lloc on es guardarà el nostre projecte. Aquest finestra també serveix per ficar-li el nom.

Figura 31: Pantalla General

En aquesta pantalla seleccionarem el microcontrolador amb el que voldrem treballar. Podem seleccionarem la freqüència i tipus d’oscil·lador utilitzat. Així com opcions del Watch Dog Timer, tipus de punters, possibilitat de programar el microcontrolador des del seu destí final, entre altres opcions. El botó de color blau de la part inferior dreta ens va mostrant al llarg del procés de configuració el codi que anem generant segons les opcions que estiguin seleccionades.

Page 65: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

65

Figura 32: Pantalla Comunicacions

En aquesta pantalla seleccionarem les comunicacions que vulguem utilitzar amb el microcontrolador, tan sols tindrem habilitades les opcions que el nostre microcontrolador sigui capaç de suportar, les altres es mostraran deshabilitades.

Figura 33: Pantalla dels timers

S’utilitza per habilitar i configurar els timers que el microcontrolador utilitzi, com és el cas del Timer 0 i també es podran configurar els timers que necessiti l’usuari, en el cas d’aquest projecte, s’ha configurat el Timer 2 perquè executi la interrupció cada 2.0 ms.

Page 66: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

66

Figura 34: Configuració del les entrades analògiques

El port A del microcontrolador es pot utilitzar com un típic port d’entrada/sortida digital, o bé com un port d’entrades analògiques, en la finestra AD/pins es pot seleccionar la configuració que se li vulgui donar, de forma particular els pins RA3 i RA2 es poden configurar com punts de tensió positiva i negativa respectivament.

Figura 35: Habilitació de les interrupcions

En la pestanya Interrupts s’habilitarà les interrupcions de les que es vulgui disposar. Si es pitja sobre el botó “View Code Generated from this tab” podem observar que el programa ja ens dissenya les funcions on introduirem el codi el codi per a cada interrupció.

Page 67: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

67

Figura 36: Codi generat automàticament

En la Figura 36 podem veure de forma detallada el codi i les funcions generades a partir de la selecció de la Figura 35. Fins aquí hem vist els passos per començar a configurar un projecte, les pestanyes Other, Drivers, I/O pins no s’ha utilitzat en aquest projecte. Drivers s’utilitza per acoblar una memòria externa al microcontrolador, un rellotge, una pantalla LCD o algun altre perifèric. I/O pins serveix per establir la configuració de cadascun dels pins del microcontrolador, tot i que aquesta configuració no es gaire útil ja que els pins ja queden configurats segons el passos que s’hagin seguit en els punts anteriors. Per defecte son pins d’entrada/sortida.

Figura 37: Fitxers creats exemple.h #include <16F876.h> #use delay(clock=4000000) #fuses XT,NOWDT #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7) En aquest fitxer es defineix el microcontrolador utilitzat, el tipus de rellotge i la seva freqüència, la utilització o no del Watch Dog Timer i la configuració de les comunicacions sèrie.

Transmit buffer empty Timer 2 overflow

Page 68: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

68

exemple.c #include "C:\Projecte PCW\exemple.h" #int_TBE TBE_isr() #int_TIMER2 TIMER2_isr() void main() setup_adc_ports(NO_ANALOGS); setup_adc(ADC_CLOCK_DIV_2); setup_spi(FALSE); setup_counters(RTCC_INTERNAL,RTCC_DIV_2); setup_timer_1(T1_DISABLED); setup_timer_2(T2_DIV_BY_4,32,16); setup_ccp1(CCP_OFF); setup_ccp2(CCP_OFF); enable_interrupts(INT_TBE); enable_interrupts(INT_TIMER2); enable_interrupts(global); En aquest fitxer es creen les funcions d’interrupció i les inicialitzacions necessàries en la funció principal main, aquestes inicialitzacions responen al que haguem seleccionat en el procés de finestres anterior. Aquí comença la feina de programar el projecte que vulguem desenvolupar. El fitxer exemple.PJT és el fitxer projecte, aquest fitxer és el que s’obrirà des de l’aplicació PCW Compiler quan vulguem obrir el projecte guardat. Per compilar el projecte premerem el botó , també podem seleccionar la mateixa opció des del menú.

Figura 38: Finestra de compilació realitzada amb èxit.

Page 69: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

69

6.3. ICPROG ICPROG és un software que es complementa amb el PCW Compiler. ICPROG llegeix el fitxer.HEX creal pel PCW Compiler i el transmet al microcontrolador per mitjà d’una targeta programadora per al microcontrolador seleccionat. L’ICPROG és un programa de versió lliure i es pot baixar directament de la pàgina web http://www.ic-prog.com/

6.3.1. Configuració del ICPROG Per a que el programa funcioni correctament s’han de seguir els següents passos. El programa disposa dels següents fitxers

Programa principal, aquest fitxer és l’executable i es baixa directament de l’enllaç de la pàgina.

És el fitxer d’ajuda de l’ICPROG és baixa directament de l’enllaç de la pàgina, igual que l’icprog.exe.

Aquest fitxer s’utilitza per sistemes operatius Windows XP, sense aquest fitxer el programa no funciona correctament, aquest fitxer no ve inclòs amb els altres dos.

Per començar ens assegurarem que la connexió del port sèrie és la següent:

Figura 39: Propietats del port de comunicacions (COM1)

Page 70: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

70

Per accedir a a les propietats de la Figura 39 ho farem prement amb el botó dret del ratolí sobre Mi Pc i seleccionar Propiedades, en la pestanya de Hardware premerem el botó Administrador de dispositivos.

Figura 40: Administrador de dispositivos

Seleccionarem propiedades del port que vulguem utilitzar per realitzar la programació del microcontrolador, an aquest cas les del COM1. El següent pas és el de configurar el fitxer icprog.exe, per fer-ho selecionarem propiedades del desplegable que ens sortirà despres de clicar amb el botó dret del ratolí sobre la icona del fitxer.

Figura 41: Propietats del fitxer icprog.exe

Seleccionarem el modo de compatibilidad Windows 95.

Page 71: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

71

Un cop tinguem aquests punts configurats entrarem al programa i seleccionarem. Ajustes → Tipo Hardware

o premerem el botó

Figura 42: Ajustes de Hardware de l’ICPROG

Ajustarem les propietats del programa perquè s’ajustin a les de la Figura 42.

6.3.2. Programació del microcontrolador Per realitzar la programació, seleccionarem el microcontrolador a la finestra superior dreta de la Figura 42 i carregarem el fitxer.HEX generat amb el programa PCW Compiler. La configuració de la part dreta de la pantalla, com el tipus d’oscil·lador, els bits de configuració i la paraula de configuració ja agafen els valors que s’hagin definit a l’hora de crear el projecte en el PCW Compiler.

Borra la memòria del microcontrolador.

Programa el microcontrolador amb el fitxer.HEX carregat El programa llegeix la memòria del microcontrolador i la compara amb la del fitxer.HEX Volca la memòria del microcontrolador al PC, és útil per crear còpies de seguretat.

Page 72: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

72

6.4. Visual Studio En aquest punt s’intentarà explicar com es comença a treballar amb el Visual Studio.NET per realitzar un projecte semblant al realitzat en aquest projecte, en cap cas intenta ser un manual de programació amb Visual Basic.NET. Per començar obrirem el Visual Studio.

Figura 43: Pantalla d’inici del Visual Studio

Per començar un nou projecte se seleccionarà: Archivo → Nuevo → Proyecto...

Page 73: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

73

Figura 44: Finestra de selecció del tipus de projecte

En tipos de proyecto seleccionarem el llenguatge de programació, en aquest cas Proyectos de Visual Basic. A la finestra de Plantillas seleccionarem Aplicación para Windows. Nombre: el nom del projecte. Ubicación: direcció del PC on es guardarà el projecte.

Figura 45: Inici del programa

Page 74: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

74

La finestra Form1, és la finestra que s’obrirà en executar el projecte. A la columna de l’esquerra “Windows Forms” tenim els controls típics que podem arrossegar amb el ratolí fins a la finestra Form1. Per configurar els controls disposem de la columna de Propiedades a la part inferior dreta de la pantalla, en aquesta columna podrem veure i modificar les propietats de l’element que tinguem seleccionat de la finestra Form1, aquesta inclosa. A la part superior dreta de la pantalla “Explorador de soluciones” tenim l’estructura del nostre projecte. Per compilar i arrancar el projecte seleccionarem el botó . També podem fer-ho pel menú: Depurar → Iniciar o prement la tecla F5. Si ho fem comprovarem que el programa ja està prepara per “arrancar”, tot i que no fa res. Com s’ha comentat en el punt 3.5.1 és un programa basat amb events, aquests events els realitzarà l’usuari mitjançant els components, botons o objectes que tingui el programa. Aquests components són els de la finestra “Windows Forms”. Per configurar el còdi d’aquests components farem doble click amb el ratolí un com els haguem arrossegat a la nostra finestra Form1.

Figura 46: Boto inserit en la finestra Form1

Figura 47: Còdi de l’aplicació

Fent doble click sobre el Button1 de la Figura 46 obrim el codi del programa amb la funció que s’executarà quan cliquem el Button1. Private Sub Button1_Click(...

Page 75: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

75

En el cas particular d’aquest projecte s’ha hagut d’instal·lar una llibreria per poder controlar el port sèrie de l’ordinador. La llibreria utilitzada per fer-ho és CRs232.vb. Per carregar aquesta llibreria seguim ela passos següents.

Figura 48: Explorador de soluciones

Premerem el botó de la dreta del ratolí sobre el nostre projecte “WindowsApplication1” de l’explorador de soluciones i seleccionarem Agregar → Agregar elemento existente...

Figura 49: Agregar una llibreria al projecte

Page 76: Connexió per Fibra Òptica d’un Termopar Tipus K a un Ordinadordeeea.urv.cat/public/PROPOSTES/pub/pdf/861pub.pdfConnexió per Fibra Òptica d’un Termopar Tipus K a un Ordinador

76

Figura 50: Explorador de soluciones actualitzat

Ara ja disposem de la llibreria CRs232.vb per al nostre projecte, podent utilitzar les seves estructures i funcions com a pròpies.