Anda di halaman 1dari 23

44

Captulo2
Sistemapropuesto

Enelpresentecapitulosepresentaelsistemaelectrnicopropuestoparaelmanejodeunproceso
de mezclado. Dentro de este captulo se abordan dos aspectos importantes. En el primero se
describe el sistema y sus caractersticas generales. La segunda parte se enfoca en la descripcin
especificadeloscomponentesdelsistemaelectrnicoascomolaprogramacinPIC18F4550yel
softwaredeoperacinrealizadoenC#.
2.1.EsquemaGeneral
Elsistemautilizadoenelproyectodetesisconsistienintegrarunsistemaelectrnicoempleando
tcnicas de diseo de sistemas digitales sobre la base de un microcontrolador PIC18F4550 con
interfaceUSB,comolomuestraelesquemapropuestodelaFigura2.1.

UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

45

Figura2.1.Esquemageneraldelsistemaelectrnicoparaelmezclado
DelaFigura2.1tenemosqueelmicrocontroladorPIC18F4550controlalosiguiente:
Motor DC M1. Impulsa un tornillo sin fin en sentido horario para dosificar el polvo y en
sentidoantihorarioparasulimpieza.
MotorDCM2.Impulsalabombaparaelflujorecirculantedelamezcla.Adicionalmentese
deseanprobardiversasvelocidadesparadiferentestiposdemezclado,locualseconsigue
variandolasealpormodulacindeanchodepulso(PWM).
Motor DC M3. Impulsa el sistema que posiciona uno de cuatro recipientes contenedores
decuatropolvos.Eventualmenteelposicionamientoserealizaraadiferentesvelocidades,
locualseconsiguevariandolasealpormodulacindeanchodepulso(PWM).
MotorDCM4.Seprevqueimpulseunventiladorquepermitaenfriarlapreparacinfinal.
ResistenciaR1.Calientaellquidocontenidoenunrecipientedepredepositoparafacilitar
laintegracindeloselementos.
SolenoideS1.Permiteelanclajedeunodeloscuatrodepsitosdepolvoparaasegurarsu
correctovaciadoenlamezcla.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

46

ElectrovlvulasEV1EV4.Habilitanlacorrectacirculacindellquidoysolucinpreparada
porlosdiferentesrecipientesdelsistemademezclado.
TransductoresdetemperaturaT1yT2.Registranlastemperaturasdeintersenelproceso
demezclado.
Transductores de presin P1 y P2. Registran las presiones de inters en el proceso de
mezclado.
Referencia de voltaje Ref. Constituye una seal de referencia para controlar la fase de
disparoenlaetapadepotenciaqueenergizalaresistenciaR1.
ConexinUSB.ConstituyelavadecomunicacinentreelsistemaelectrnicoyunaPCcon
finesdedepuracin.
ConexinI
2
C.Constituyelavadecomunicacincondispositivoselectrnicoscomerciales
quehabilitarnalsistemaparafuturasmodificaciones.
2.2.Sistemaelectrnico
El sistema electrnico est constituido por tres bloques; el subsistema de dosificacin de
ingredientes, mezclado y el sistema de diagnstico. El diseo electrnico se realiz utilizando
comoprincipalidealaoptimizacindeespaciosycontrolartodoelprocesodemezcladomediante
un solo sistema electrnico. El principal operador del proceso ser el PIC18F4550 de Microchip
queserelquelleveacabotodoelprocesoylasupervisindeste(Anexo1,2y3).
Elsistemabaseparaeldesarrollodelsistemaelectrnico,enelcasodelaconexindecontroldel
microcontroladorPIC18F4550,tienecomobaseeldelsistemadedesarrollodelaFigura2.2.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

47

Figura2.2ArquitecturabasedelPIC18F4550.
En la arquitectura base contamos con un oscilador de 20MHz as como con capacitores de 22 pF
paramayorestabilidaddelosciladorconelqueelPIC18F4550trabajaaaltavelocidad.Ademsdel
conector USB el cual es nuestro medio de comunicacin con el microcontrolador. El USB cuenta
con cuatros elementos de comunicacin (+5, D, D+, GND), el cual podra proporcionar la
alimentacinde5V.Paranuestrocasocontamosconunaalimentacinexternalacualsuministra
toda la alimentacin de 5V que requiere la tarjeta debido a que la demanda de corriente en la
tarjeta sobrepase la capacidad del USB y por seguridad de la Interfaz Hombre Maquina
(Computadora).LospuntosD+yDsonlosmediosdecomunicacindeentradaysalidadedatos
conlacomputadora.
Adems de la fuente de 5V mencionada anteriormente es necesaria una fuente de 24V a 3A
regulada para la alimentacin de los impulsores CD y sensores de presin. Los circuitos que
proporcionanlosnivelesdevoltajesemuestranenlaFigura2.3.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

48

Figura2.3Fuentesdealimentacin.
DelaFigura2.3podemosobservarqueelarregloparalafuentede5Vnoeselmismoqueparala
fuentede24V,debidoaqueelarreglomostradoenstaltima,eselclsicoproporcionadoporel
fabricanteparaelreguladordevoltajeconunamplificadordecorrienteimplementadomediante
elTIP42,locualpuedeproporcionarunacorrientemximadesalidade3A.
2.2.1.SubsistemaimpulsorCD
En el subsistema impulsor CD se analizarn tres tipos realizados: uno que est diseado por un
arreglo de transistores bipolares (impulsor CD bipolar), otro mediante un puente H integrado en
uncircuito(impulsorCDPWM),otroconuntransistorMOSFETdepotencia(impulsorCDunipolar)
yfinalmenteunarregloDarlington(impulsorCDbuffer).
ImpulsorCDbuffer
ElsubsistemaimpulsormedianteunarreglodetransistoresDarlingtonfuemanejadoasdebidoa
queestaconfiguracinproporcionaunagrangananciadecorrienteybuenagananciadetensin,
adems de contar con una excelente velocidad de operacin. Los transistores Darlington se
integranenundispositivosemiconductorquecombinadostransistoresbipolares.Lagananciade
losDarlingtonestdadaporelproductodelasgananciasdelostransistoresindividuales.
ElarregloutilizadoenestesubsistemaimpulsoreselmostradoenlaFigura2.4.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

49

Figura2.4EsquemadelarreglocontransistoresDarlington.
LostransistoresDarlingtonseencuentranenelcircuitointegrado(ULN2003A).Dondemedianteel
microcontrolador PIC18F4550 se hace llegar el valor de entrada al ULN2003A, para controlar las
tres electrovlvulas que el proceso necesita as como dos solenoides. Si el PIC, por las patas
correspondientes, enva un 0 lgico entonces el arreglo de transistor se encuentra en estado de
corteyconestolossolenoidesoelectrovlvulassedesenergizanalnohaberdiferenciadevoltaje.
CuandoelPICmandaun1lgicoelarregloseencuentraenestadodesaturacin,locualpermite
unadiferenciadevoltajeyaslaactivacindeloselementos.Cadaelementopuedesercontrolado
independientementeporelPICmediantelaprogramacin.
ImpulsorCDbipolar
ElsistemaimpulsordeCDmediantepuentesHfueutilizadodebidoaqueestecircuitoelectrnico
permitequeunmotorelectrnicodeCDpuedagirarenambossentidosydiferentesvelocidades.
ElpuenteHseconstruyecon4transistores(interruptores)(Figura2.5).CuandolostransistoresQ1
y Q4 estn conduciendo (Q2 y Q3 no conducen) se aplica una tensin positiva, haciendo girar al
motor CD en un sentido. Si Q1 y Q4 no conducen (Q2 y Q3 conducen) el voltaje se invierte
permitiendoconestoelsentidoinversodelmotor.LatablalgicasemuestraenlaTabla2.1
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

50

Figura2.5EstructuradelpuenteH.
ParaelpresenteproyectolostransistoresutilizadosfueronenQ1yQ3losTIPs41yparaQ2yQ4
los TIPs 42. El circuito lgico de control est constituido por la compuerta 74LS01 y el
microcontrolador(Figura2.6).EldesempeodelmotorM1semuestraenlaTabla2.2endondese
encuentraespecificadoelsentidodegiro.
Q1(TIP41) Q2(TIP42) Q3(TIP41) Q4(TIP42) Sentido
1 0 0 1 Giroaladerecha
0 1 1 0 Giroalaizquierda
0 0 0 0 Pararmotor
1 1 1 1 Frenarmotor
Tabla2.1TablalgicadelpuenteH.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

51

Figura2.6EsquemadepuenteHutilizado.
Se realizaron ajustes para que el puente H funcione a 24V. Despus del microcontrolador, la
compuertaproporcionalaordendonde,alrecibirun1lgicoporpartedelPIC18F4550,alasalida
enva un 0 lgico y con esto permite la polarizacin de 24 V en la base del arreglo de los
transistores,permitiendoqueelmotorfuncioneygireenunsentido.Porotraparte,alenviarun0
lgico el PIC18F4550, la compuertaenva un 1 lgico y esto proporciona un voltajede 1.4V en la
basedelostransistoresocasionandoquesedetengaelmotor.
El principal objetivo de este arreglo esmover un tornillo sin fin, el cual en un sentido verter los
polvosquesenecesitanmezclaryenelotrosentidoproporcionarsuautolimpieza.
PuertoE1delPIC PuertoE2delPIC Sentidodegiro
1 1 Parado
0 1 Horario
1 0 Antihorario
0 0 Nodefinido
Tabla2.2Secuencialgicadeltornillosinfin.
ImpulsorCDPWM
AdemsdelarreglodepuenteHhechomediantetransistores,estearreglolopodemosencontrar
enformadecircuitointegrado,elcualfueutilizadoparaelmovimientovariabledeotromotorde
CDcomosemuestraenlaFigura2.7.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

52

Figura2.7EsquemadelcircuitointegradoLMD18201.
Como se puede observar en la Figura 2.7, el puente H en forma de circuito integrado, es el
LMD18201 donde en este elemento a diferencia del anteriormente ilustrado, los motores de CD
puedenvariarsusvelocidadesmediantePWM.Adems,elcircuitointegradopuedeotorgarhasta
una corriente de 3 A y soportar hasta 55V de alimentacin. Cabe hacer mencin, que para el
presente proyecto se utilizaron 24V. El control y manejo del PWM se realiz mediante el
PIC18F4550 mandando la variacin de dicho PWM en la pata de la direccin del puente H
integradocomoserecomiendaparaelmanejodegirosdeunsentidoodeotro(Anexo5.6.),en
donde por medio de la interface para PC desarrollada, se pueden variar los parmetros de PWM
enelPICyporlotantomodificarlavelocidadymanejardeformadeseadalosmotoresdeDC.La
configuracinquesemuestraeslarecomendadaporelfabricanteconocidacomosimple.
Paraestosimpulsoressetienecontempladoqueseaunoelqueimpulselabombaparaelflujore
circulante y el otro motor para posicionar el sistema de los recipientes contenedores de polvo,
ambosconlacapacidaddevariarsuvelocidaddebidoalasespecificacionesdelcliente.
ImpulsorCDunipolar
Otro impulsor de CD utilizado fue el constituido por un arreglo de transistores, un MOSFET de
potencia y un circuito lgico de acoplamiento de nivel de voltaje. En este arreglo, por medio de
una compuerta lgica, el PIC18F4550 enva una seal de mando permitiendo la conduccin enel
arreglodetransistores.EstopermitequeelMOSFETseencuentreenestadodeconduccinyasu
vezpermitaelgirodelmotorcomosemuestraenlaFigura2.8.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

53

Este motor, a diferencia de los anteriores ilustrados, solo gira en un sentido sin poder variar su
velocidad, el cual se pretende que sirva para conectar un ventilador el cual pueda enfriar la
sustanciaproducida.

Figura2.8EsquemadeimpulsordeCDconMOSFET.
UnadelasprincipalesventajasdeutilizarelMOSFETeslapresenciadeunaimpedanciadeentrada
elevada,suvelocidaddeconmutacinesaltaademsdequeocupapocoespacio.
2.2.2.SubsistemaimpulsorCA
El sistema impulsor de CA utilizado se realiz mediante un control del ngulo de fase para la
manipulacindeunaresistenciacalentadora.Enelesquemaimplementado,untransformadorde
6V proporciona la seal de la lnea de CA con la cual se deber sincronizar el ngulo de fase. La
sealdeCAseobtienedeunodelospuentesrectificadoresdelvoltajedepolarizacin.Estaseal
de media onda, es conectada a un transistor BC547 para que en el colector se genere una seal
cuadrada con niveles TTL la cual constituye la seal de referencia y activar el microcontrolador
paraelmanejoporinterrupcionesdelcontroldefase.
LasealdereferenciaqueestaconectadaalPIC18F4550,activapormediodeuntemporizadorde
retardo, una seal cuadrada de salida la cual ser la que regule el control de fase. Esta seal de
salidaesladeentradaalMOC3011,elcualesundispositivooptoacopladorentrelgicadigitaly
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

54

SCR, que funciona como interruptor excitado por una seal de control, donde la duracin de la
sealdecontrolesproporcionadaporelPIC.
La seal de activacin o manipulacin del control de fase est programada mediante
interrupcionesyretardosparaproporcionarelmandodeestaactividad.
Porotrolado,eloptoacopladormanejaunSCRquepermitemanipularlacantidaddevoltajeque
sedeseaproporcionaraunelementoenCA,queennuestrocasoesunaresistenciacalentadora,
peropuedeserutilizadoparamanipularcualquierotroelementodeCA.
ElesquemadeladescripcindelaimplementacinarribamencionadaseilustraenlaFigura2.9

Figura2.9EsquemadelsubsistemaimpulsordeCA.

2.2.3.Subsistemademedicin
Estesubsistemaesderelevanciadebidoalaresponsabilidadqueesteconllevaenlossistemasde
mezcladoparalaeficienciaenlaproduccindelassolucionesyelfuncionamientodelequipo.En
elpresenteproyectosetienendossubsistemasdemedicin,eldelatemperaturayeldepresin.
Ya que para este mecanismo, con estos dos subsistemas de medicin es suficiente para el
monitoreodelproceso.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

55

Subsistemademedicindetemperatura
ParaestecasoseutilizaelsensordetemperaturaLM35dondeparapoderobtenerlamedicinde
ste hay que hacer notar que primero se debe configurar al microcontrolador como convertidor
analgico/digital,paralalecturadevaloresanalgicos.Laconfiguracinutilizadaparalalecturade
temperaturas mediante el LM35 es la que se muestra en la figura 2.10, que es la proporcionada
porelfabricantedeestesensor.

Figura2.10ConfiguracinbsicadelsensordetemperaturaenC.
LaseriedesensoresLM35danunvoltajedesalidalinealproporcionalalatemperaturaenCelsius
(Centgrados), este sensor da una lectura de temperatura mxima de 150 C, adecuado para el
sistema de mezclado ya que la temperatura a la cual se piensa trabajar en casos crticos es de
100C. Paraelsistema demezcladodesarrolladoseutilizarondos sensoresdetemperatura, para
monitorear el calentamiento del recipiente de predepsito y el segundo sensor colocado en el
depsito donde se lleva a cabo el flujo recirculante de la mezcla. La implementacin de estos
dispositivosenconjuntoconelmicrocontroladorsepuedeobservarenlaFigura2.11.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

56

Figura2.11Esquemadeconexindelossensoresdetemperatura.
Subsistemademedicindepresin
El subsistema de medicin que se desarroll fue el implementado con el sensor de presin 8314
desarrollado porbrket el cual nos permitehacer una lectura de hasta 40 bares. Al igual que los
sensores de temperatura, entra por un puerto del PIC18F4550 configurado como entrada del
convertidor analgico/digital. Tenemos que a diferencia del sensor de temperatura el cual tiene
una relacin de voltaje y temperatura este no cuenta con relacin de presin y voltaje, sino de
corrienteypresinporloquehayqueobtenersuvoltajecorrespondiente.Porlotantosecalcul
elvalordeunaresistenciadecargaparaobtenerelvoltajeyrelacionarloconelvalordepresin.
La ecuacin 2.1 es utilizada para obtener el valor de la resistencia de acuerdo con los datos
proporcionadosporelfabricante.

El arreglo electrnico, as como el ajuste de la resistencia y la conexin al PIC18F4550 que se


implementaronsemuestranenlaFigura2.12

UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

57

Figura2.12Esquemadeconexindelossensoresdepresin.

Debido a que nohay resistencias de 800 las utilizadas fueronde 680queeslamsprxima a


800segnlaecuacin2.1.
2.2.4.Algoritmodecontrol
El software desarrollado permite el control de todo el sistema as como la supervisin de la
temperatura y la presin (Figura 2.13). Todo este control realizado mediante el PIC18F4550
manipuladoporelusuariomediantelainterfazgrfica.
ElcdigofuenteparaelPIC18F4550fuedesarrolladoenlenguajeCparaPIC(Anexo5.4).
Para la programacin en lenguaje C para PIC se utilizo el compilador PIC C, donde el principal
objetivo para el desarrollo de la programacin es la configuracin de los puertos del
micrococntroladorparapodermanipularlosconelenviyrecepcindeinformacin.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

58

Figura2.13Esquemageneraldecontrol.
Lospasosparalarealizacindelaprogramacinsonlossiguientes:
Configuracindelospinesdelospuertosdesalida.
Sedefinentantoelbusdecontrolcomoelbusdedatos.
Inicializacintantodelconvertidoranalgico/digitalcomodelPWMdelmicrocontrolador.
Declaracin del tamao de variables internas para el manejo de datos en el
microcontrolador.
SeesperaarecibiruncomandomedianteUSBdelacomputadoraparalaejecucindeuna
operacin.
Unavezrecibidoesecomandoserealizalaoperacinrequerida.
SisenecesitadesplegaralgndatoesteesenviadomedianteUSBalacomputadora.
El pseudocdigo de las operaciones de control realizadas por el PIC18F4550 se enuncia a
continuacin.
1. Inicio
2. Configuracindelospuertosdesalidayderecepcindedatos
3. Declaracindevariablesglobalesautilizar
4. ConfiguracindelpuertoUSB
a) ConfiguracindelaslibrerasdeUSBydelosdescriptoresparaestedispositivo
b) InicializacindelUSB
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

59

c) HabilitacindelperifricoUSBeinterrupciones
5. PreguntarsielPIC18F4550fuededetectadoporWindows
a) Si.Continuarconelpunto6
b) No.Volveralpunto5
6. Preguntarsiserecibiinformacindelmododecontrolporlacomputadora
a) Si.Continuarconelpunto7
b) No.Volveralpunto6
7. Preguntar(Sil)modo=(esiguala)1(MovermotorM2)
a) ActualizarelvalordePWM1conelvalorproporcionadoenlaPC
8. Preguntar(Sil)modo=(esiguala)2(MovermotorM3)
a) ActualizarelvalordelPWM2conelvalorproporcionadoenlaPC
9. Preguntar(Sil)modo=(esiguala)3(Actualizarestadodelsolenoide2)
a) Ponerelvalordeparam1proporcionadodesdelaPCenelpinB4
10. Preguntar(Sil)modo=(esiguala)4(Actualizarestadodelaelectrovlvula1)
a) Ponerelvalordeparam1proporcionadodesdelaPCenelpinA4
11. Preguntar(Sil)modo=(esiguala)5(Actualizarestadodelaelectrovlvula2)
a) Ponerelvalordeparam1proporcionadodesdelaPCenelpinB3
12. Preguntar(Sil)modo=(esiguala)6(Actualizarestadodelaelectrovlvula3)
a) Ponerelvalordeparam1proporcionadodesdelaPCenelpinC6
13. Preguntar(Sil)modo=(esiguala)7(MovermotorM4)
a) Ponerelvalordeparam1proporcionadodesdelaPCenelpinC7
14. Preguntar(Sil)modo=(esiguala)8(MovermotorM1)
a) Compararelvalordeparam2proporcionadoporlaPC
Siparam2=0ponerelvalorde1enelpinE1y1enelpinE2
Siparam2=1ponerelvalorde0enelpinE1y1enelpinE2
Siparam2=2ponerelvalorde1enelpinE1y0enelpinE2
Siparam3=3ponerelvalorde0enelpinE1y0enelpinE2
15. Preguntar(Sil)modo=(esiguala)9(ActualizarelngulodefaseparalaresistenciaR1)
a) Leerparam1 y param2 dela computadora. Multiplicar param2 por 256 y sumarle
param1,elresultadoguardarloenalfa.
b) Almacenarelvalordealfaeneltimer1
c) Mandarun1alpinE0ydespusun0conunretrasode1ms
16. Preguntar(Sil)modo=(esiguala)10(LecturadetemperaturaT1)
a) Inicializarvariablelocalacumuladora0
b) Inicializar variable i en 1 e incrementar de uno en uno hasta 100 mientras se
realizalalecturadelcanal0deconversinanalgica/digital,dondeelresultadose
irguardandoenlavariableresultadoyestesumadoaacumuladoryguardandoel
resultadoenacumulador
c) Una vez finalizada las lecturas, dividir acumulador entre 100 y almacenar en la
variableTemp1
d) MandarelvalorobtenidoenTemp1alaPCparasucorrectodespliegue
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

60

17. Preguntar(Sil)modo=(esiguala)11(LecturadetemperaturaT2)
a) Inicializarvariablelocalacumuladora0
b) Inicializar variable i en 1 e incrementar de uno en uno hasta 100 mientras se
realizalalecturadelcanal1deconversinanalgica/digital,dondeelresultadose
irguardandoenlavariableresultadoyestesumadoaacumuladoryguardandoel
resultadoenacumulador
c) Una vez finalizada las lecturas, dividir acumulador entre 100 y almacenar en la
variableTemp1
d) MandarelvalorobtenidoenTemp1alaPCparasucorrectodespliegue
18. Preguntar(Sil)modo=(esiguala)12(LecturadepresinP1)
a) Inicializarvariablelocalacumuladora0
b) Inicializar variable i en 1 e incrementar de uno en uno hasta 100 mientras se
realizalalecturadelcanal2deconversinanalgica/digital,dondeelresultadose
irguardandoenlavariableresultadoyestesumadoaacumuladoryguardandoel
resultadoenacumulador
c) Una vez finalizada las lecturas, dividir acumulador entre 100 y almacenar en la
variableTemp1
d) MandarelvalorobtenidoenTemp1alaPCparasucorrectodespliegue
19. Preguntar(Sil)modo=(esiguala)13(LecturadepresinP2)
a) Inicializarvariablelocalacumuladora0
b) Inicializar variable i en 1 e incrementar de uno en uno hasta 100 mientras se
realizalalecturadelcanal2deconversinanalgica/digital,dondeelresultadose
irguardandoenlavariableresultadoyestesumadoaacumuladoryguardandoel
resultadoenacumulador
c) Una vez finalizada las lecturas, dividir acumulador entre 100 y almacenar en la
variableTemp1
d) MandarelvalorobtenidoenTemp1alaPCparasucorrectodespliegue
20. Fin
Como se puede observar en el pseudocdigo anterior, el programa en el PIC es en esencia una
terminalmudaenesperaderecibiruncomandoporelpuertoUSByejecutarlaoperacinindicada
sobrealgunodelosdispositivosperifricos.
Como ejemplo de los procesos mencionados en el pseudocdigo tenemos las siguientes
instruccionesrealizadasenCparaPIC.
El PIC18F4550 se encuentra esperando el mtodo seleccionado por el usuario en la PC. Para el
caso de que entre al modo de los motores de DC controlados mediante PWM se presenta las
siguientesinstrucciones:
valor=param1+(param2*256);
setup_ccp1(CCP_PWM);//ConfiguracindelPWM
setup_timer_2(T2_DIV_BY_1,255,1);
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

61

set_pwm1_duty(valor);

Donde se tiene que en param1 se almacena el valor bajo y en param2 el valor alto del valor
dadoporelusuarioparaelgiroysusentidoenquesedeseaactivarlosmotoresdeCD,debidoa
que por el bus de datos solo se pueden mandar 8 bits es que se fragmenta el valor, una vez
recibidosenelmicrocontroladorseunenalmacenandoestevalorenlavariablevalor.Coneste
dato,seconfiguraraelPWMquesequiereutilizar.Paralainstruccinqueseejemplifica,seutiliza
el PWM1. Despus de esto, se configura el timer2 donde se puede emplear como base de
tiempos de la modulacin en ancho de pulso (PWM) declarando el modo de la configuracin del
timer que se desea utilizar. El modo est definido en el fichero de cabecera, el perodo es un
valor entero de ocho bits y el postcaler hace que la interrupcin sea en el primer conteo del
timerestoconelvalorde1.
UnavezconfiguradoeltimeryelPWM1seleindicaquegananciavaatenerelPWM1.Ennuestro
casoserelvalorguardadoenlavariablevalor.
Ahorasiseescogeelcasodelmanejodecualquieradelastreselectrovlvulas,lossolenoidesyel
motor adicional mencionados en el pseudocdigo, el control se realiza mediante las siguientes
instrucciones:
if(modo==x)//Modo_Solenoide1
{
output_bit(PIN_C0,param1);
}
Endondeunavezqueelmodo(asociadoalelementoquesedeseacontrola)seaseleccionado,se
manda a la pata del PIN asociado al elemento el valor almacenado en la constante param1 la
cualpuedevariarespecficamenteen1o0,valoresmanipuladosdesdeelprogramadelainterfaz
grfica.
Estevalorpermitirencenderoapagarelelementocontrolado.
Siguiendoconladescripcin,paraelcasodecontroldeltornillosinfinelcdigoquedescribeeste
manejoeselsiguiente:
if(param2==1)//Giroalaizquierda
{
output_bit(PIN_E1,0);
output_bit(PIN_E2,1);
}
Dondeentrandoalmododecontrolareltornillosinfin,lavariableparam2nosindicarelbotn
seleccionado,yaseaeldegiroaladerecha,izquierdaoeldeparareltornilloparaseleccionarotro
caso el cual se tiene predeterminada la salida que se mandar a los puertos que controlan el
movimiento de este elemento. En este caso particular se muestra que la seleccin de giro a la
izquierdamandaun0alpin1delpuertoEyun0alpin2delpuertoE.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

62

Ahoraejemplificandoelmodo,paraelcontroldefasetenemos:
{
alfa=param1+(param2*256)
}
Al igual que el caso del PWM el dato es fragmentado y almacenado en la variable param1 la
partebajayenparam2laalta.Serealizalaoperacincorrespondienteparaobtenerelvalorque
fue tecleado por el operador y este almacenado en la variable alfa para que sta entre a un
mtodo ya declarado el cual nos permite una interrupcin y as poder manipular el ancho de la
sealquecontrolaelcontroldefase.

Por ltimo, ejemplificando el control de los sensores de temperatura y presin las instrucciones
quepermitenelmonitoreosonlassiguientes:

if(modo==x)//Modo_ConvertidorA/DTemperatura2
{
acumulador=0;
for(i=1;i<=100;i++)
{
set_adc_channel(1);
delay_us(200);
resultado=read_adc();
acumulador=acumulador+resultado;
}
Temp1=(int16)(acumulador/100);
cad_lw=Temp1&0xFF;
cad_hi=Temp1>>8;
usb_put_packet(1,envia,2,USB_DTS_TOGGLE);
}

Unavezseleccionadoelmtodo/sensorquequeremosmonitorear,seinicializaunavariablea0la
cualserlaencargadadedesplegarnosunpromediodelaslecturastomadas.
Inicializamos un contador que llegue hasta 100 para crear un ciclo de lecturas de datos de 100,
donde primero se configura el canal del convertidor analgico que se desea utilizar (para el caso
mencionado es 1), se declara un retardo para iniciar la lectura por este canal y una vez pasando
este retardo leemos el valor por el convertidor y almacenamos dicho valor en la constante. Este
resultadosersumadoalvalorqueseencuentraenlavariableacumulador.
Almacenamos en la variableTemp1elvalordelacumuladordividido entre 100 paraobtenerel
promedio de las lecturas realizadas en el ciclo de lecturas. Este valor almacenado en Temp1 lo
fragmentamosendosvariablescad_lwycad_hienlaprimerasealmacenarlapartebajadel
valoryenlasegundalaalta.
UnavezalmacenadoestosvaloresseenvaelpaquetededatosalaPCparasuarregloycorrecto
despliegue.
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

63

2.3.ProgramaparaPC
Elobjetivodelprogramaespermitirlafcilmanipulacindelosdispositivosactuadoresysensores
delsistemademezcladodesdeunaPCalrealizarelenlaceconelsistemaelectrnicomedianteel
puertoUSB.
2.3.1.Descripcinenelmbitodeloperador
El sistema electrnico es controlado mediante el PIC18F4550 el cual implementa el algoritmo
operacionalodecontroldescritoanteriormente.Elsistemademezcladocuentaconunsoftware
de operacin para la computadora que es utilizado como ventana de comunicacin para el
desplieguedetemperaturaypresin,ascomoelcontroldelasdiversaselectrovlvulasnecesarias
y motores de corriente directa adems de la manipulacin de la intensidad de la resistencia
calentadora que se utiliza. Esta interfaz de operacin fue desarrollada en Visual Studio 2008
utilizandoellenguajeC#,elcualesejecutabledesdeWindowsVista.
El software por el cual se implementa el control de motores de CD, de impulsores de CA y la
adquisicin de datos es el que se muestra en la Figura 2.14 donde la comunicacin es realizada
mediantelainterfazUSB.

Figura2.14Imagendelainterfazgrficadeloperador.

UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

64

De la Figura 2.14 se observa que el usuario tiene las siguientes opciones para controlar desde la
interfazgrafica.
PWM1. Desde aqu se puede manipular el giro y la velocidad del motor que impulsa la
bomba del flujo recirculante en el proceso de mezclado. En el cuadro de texto se
introduceun nmero enteroentre 0 y 1023 que es enviado al sistema electrnico. Cabe
mencionarqueundato0proporcionalamximavelocidaddegiroenunsentido,undato
1023 proporciona la mxima velocidad en sentido contrario y un dato 511 detiene el
movimiento. Los valores intermedios proporcionan velocidades proporcionales. Para
ejecutaresteprocesosenecesitapresionarelbotndeenviar.
PWM2.AligualqueparaelPWM1,aqusepuedevariaraelsentidoyvelocidaddelmotor
queposicionaunodeloscuatrorecipientescolectoresdecuatropolvos.
Los botones Electrovlvula 1 al 3 permiten controlar dichos elementos en el proceso del
sistema de mezclado, es decir, se pueden activar las electrovlvulas, donde la
electrovlvula1permiteelpasodeunlquidoosolucin(p.e.agua)aunpredepositoen
donde se encuentra la resistencia calentadora y un sensor para monitoreo de
temperatura.
La electrovlvula 2 tiene como principal funcin el paso del lquido al depsito de
mezclado donde se encuentra el sistema de flujo recirculante para la obtencin del
productofinal.
Laelectrovlvula3permitelaentregadelamezclafinaldetodoelproceso.
Elbotnsolenoide1eselquepermiteelanclajedeunodeloscuatrodepsitosdepolvo
paraasegurarsucorrectovaciadoenlamezcla.Estesepuedeactivar/desactivardandoun
clickenelbotnquecuentaconlaleyendadesolenoide1.
El botn de solenoide 2 tambin es activado de la misma manera que los botones
mencionados anteriormente con la diferencia de que este solenoide es adicional para la
manipulacindeunsolenoideextraquesedebeagregaralproceso.
El botn motor extra se activa de la misma manera; este se conecta al ventilador que se
deseaoperarparaelenfriamientodelassustancias.
Losbotonesde temperaturasypresiones, al darles unclick, nos proporcionanlosvalores
medidos de estos parmetros para el monitoreo de las sustancias producidas en este
sistemademezclado.
En el caso del control de fase, que regula la intensidad de la resistencia calentadora, se
proporcionaelvalorenelcuadrodetextoparaincrementarlapotenciaoasmismopara
bajaroapagarlaresistenciacalentadora.
Losbotonesproporcionadosparaeltornillosinfinpermitenpararesteelementoohacerlo
girarenunsentidoparaelvaciadodelospolvosoenotroparalalimpiezadeltornillosin
fin.
Los requisitos mnimos para un buen funcionamiento del software que se tienen son los
siguientes:
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

65

PorpartedelacomputadoraointerfazhombremaquinaescontarconunpuertoUSB,un
procesador DualCore, 1 GB en RAM, 320 GB de disco duro, monitor SVGA adems del
sistemaoperativoWindowsVistayelprogramaVisualStudio2008.
Porpartedelsistemaelectrnicoademsdecontarconlatarjetaelectrnicadesarrollada
contar con las electrovlvulas, solenoides, motores y los sensores que del sistema de
mezclado.
2.3.2.Descripcinenelmbitodelprogramador
Desdeelpuntodevistadeprogramacinparalainterfazgrfica,sedebedestacarquelaslibreras
ms importantes son proporcionadas por Microchip. Por otro lado se tiene que, por ejemplo, la
clase PicUSBAPI contiene funciones de la dll mpusbapi.dll [16] las cuales permiten el envo y
recepcin de datos del microcontrolador as como tambin esta librera contiene apuntadores
que en C# permite la compilacin de cdigo unsafe donde tenemos que para mantener la
seguridad de tipos, C# de manera predeterminada no admite la aritmtica con punteros. Sin
embargo,utilizandolapalabraclaveunsafe,esposibledefiniruncontextonoseguroenelquese
puedenutilizarpunteros.[17].
LaFigura2.15nosmuestralasclasesdeimplementacinparaelsistemademezcladodesarrollado

Figura2.15Imagendevistadeclases.
EnlaclasePicUSBAPIsetienenlossiguientesmtodos:
Private void SendPacket (byte* SendData, DWORD SendLength). El cual permite enviar
datosalPIC.
PrivatevoidReceivePacket(byte*ReceiveData,DWORDReceiveLength).Estemtodosirve
pararecibirdatosdesdeelPIC.
Losdosmtodosanteriormentemencionadossonlosmsimportantesparaelcontrolyaquecon
estosseactivanlosprocesosysepuedemantenerelmonitoreoenelsistemaelectrnico.Enstos
se hace el arreglo respectivo para enviar 8 bits al PIC, para los cuales se deben proporcionar
UniversidadNacionalAutnomadeMxico Captulo2
FacultaddeIngeniera SistemaPropuesto

66

valores decimales en lascajas de texto. Para la adquisicin de datos, se reciben valores de 8 bits
para posteriormente formar el arreglo correspondiente que entregue valores decimales y se
puedanvisualizarcomodatosdetemperaturasopresiones.

Anda mungkin juga menyukai