SlideShare a Scribd company logo
1 of 22
Download to read offline
Taula de continguts del sistema de control
4. Sistema de control..................................................................................................................... 1
4.1 Estudi de mercat del sistema de control.............................................................................. 1
4.1.1 PLC .............................................................................................................................. 2
4.1.2 Arduino ........................................................................................................................ 3
4.1.3 Microcontrolador PIC .................................................................................................. 4
4.2 Criteris de selecció .............................................................................................................. 5
4.3 Valoració............................................................................................................................. 6
4.4 Elecció de la placa Genuino Mega 2560Rev3..................................................................... 7
4.4.1 Arduino Software (IDE)................................................................................................... 8
4.4.2 Programació ................................................................................................................. 9
4.5 Entrades/Sortides Digitals i analògiques........................................................................... 16
4.6 Desenvolupament del software ......................................................................................... 17
4. Sistema de control
4.1 Estudi de mercat del sistema de control
En aquest apartat s’escull el tipus de controlador que serveix per poder adquirir las dades dels
sensors i actuar sobre els actuadors.
Un cop feta la recerca dels diferents sistemes de control al mercat, escollim els tres que més
s’adapten a l’aplicació per estudiar-los una mica mes a fons.
• PLC
• Arduino
• Microcontrolador PIC
Els criteris a comparar entre els següents controladors corresponen a:
• Econòmic
• Quantitat de entrades/sortides
• Facilitat d’instal·lació.
4.1.1 PLC
Controlador lògic programable o PLC (Programable Logic Controller). Són dispositius
electrònics molt utilitzats en l’automatització industrial.
EntradasAlimentació
Fig. 4.1. Estructura PLC i programa per diagrama de contactes
Perquè un PLC compleixi amb la seva funció a controlar, es necessari programar-lo tenint en
compte les entrades/sortides i el funcionament desitjat .
AVANTATGES INCONVENIENTS
• Fiabilitat
• Consum
• Preu elevat
• Complexitat de programació
• Dissenyat per a processos industrials
Fig. 4.2. Taula avantatges PLC
4.1.2 Arduino
Arduino és una plataforma de hardware lliure, que consisteix en una placa amb
microcontrolador Atmel i AVR i un entorn de desenvolupament que implementa el llenguatge
de programació Prcocessing/Wiring i el carregador d’ arrencada (boot loader) que corra a la
placa, dissenyat per facilitar l’ us de l’ electrònica en projectes multidisciplinaris.
Sortides
Es ideal per utilitzar en projectes basats en la educació degut al seu baix preu. Hi ha diferents
tipus de plaques arduino, Es diferencien en el nombre i tipus d’ entrades/sortides, en la
memòria, en la freqüència de treball, en la potencia i en el preu .
Fig.4.3. Arduino UNO i Arduino MEGA
AVANTATGES INCONVENIENTS
• Baix cost
• Compatibilitat d’ entorns
• Consum
• Codi obert
• Poc fiable
• Complexitat de programació
Fig.4.4. Taula avantatges Arduino
4.1.3 Microcontrolador PIC
Els PIC ( Peripheral Interface Controller) són una família de microcontroladores de tipus RISC
fabricats per Microchip Technology Inc., originalment desenvolupats per a la divisió de
microelectrònica de General Instrument.
Es consideren petits ordinadors, en un sol circuit que inclouen, una CPU, una memòria RAM,
una memòria ROM i una quantitat d’ entrades/sortides.
Fig. 4.5. Microcontrolador PIC18F4550 i estructura interna
Aquests microcontroladors, es troben a molts de dispositius electrònics, tant domèstics com
industrials. Podem trobar diferents tipus de chips, des de 8 pins fins a més de 100. La funció de
cada pin es diferent i aquesta ve relaxada en el data sheet del dispositiu.
La programació en aquest cas, es molt variada. Pot ser des de llenguatge ensamblador fins a C.
AVANTATGES INCONVENIENTS
• Baix cost
• Compatibilitat d’ entorns
• Consum
• Codi obert
• Poc fiable
• Complexitat de programació
Fig.4.6. Taula avantatges Arduino
4.2 Criteris de selecció
Per realitzar la comparació d’ alternatives per la implementació del sistema de control,
utilitzarem un estudi multi criteri amb mitges ponderades.
CRITERIS DEL CLIENT PES PERCENTATGE
Cost 45 %
Consum 10%
Complexitat 15 %
Temps disseny, muntatge i programació 10 %
Nombre entrades/sortides 20%
Fig. 4.7. Taula criteris sistema de control
En la següent taula s’ avaluarà amb una puntuació del 0 al 10, cada una de les tres opcions. Cal
destacar que en les 3 opcions podem arribar a tenir el nombre d’entrades desitjat. Degut a que El
PLC te mòduls d’ampliació entrades/sortides, els pins del PIC varien en funció del model , i de
la mateix manera l’ arduino en funció del que s’adquireixi, es disposen de més o menys
entrades. Els altres criteris d’ avaluació estan explicats en l’ apartat 2.3.
OPCIÓ/
CRITERI
Cost CONSUM Complexitat TEMPS Num.
Entrades/s
ortides
PLC 3 9 5 6 10
Arduino
8 9 7 6 10
Microcontrolador
PIC 9 9 3 6
10
Fig. 4.8. Taula criteris opcions control
La següent taula ens mostra el resultat final aplicant la ponderació de cada criteri a cada opció
per tal de determinar la opció més adequada.
OPCIÓ PUNTUACIÓ PONDERADA
PLC 5.6
Arduino 8.15
Microcontrolador PIC 8
Fig. 4.9. taula ponderació control
4.3 Valoració
Basant-nos en els criteris de selecció del apartat anterior, s’ observa que la millor opció segons
els requeriments de la instal·lació i els criteris del client. Es realitza el sistema de control
mitjançant arduino.
L’ opció d’ utilitzar un PLC d’entrada sembla molt atractiva degut a la potencia del sistema. Per
cal tenir en compte que aquests dispositius, estan dissenyats principalment per aplicacions
industrials.
L’opció de implementar un sistema de control mitjançant PIC no es mala idea, tal com
s’observa a la taula de ponderació de control. La principal desavantatge es que en el cas de voler
ampliar l’ instal·lació seria més complicat que en qualsevol de les dues opcions, a part s’ hauria
de dissenyar una placa per poder fer-ne us
Per tant l’opció més adient es la d’implementar un sistema de control mitjançant Arduino Tot i
no ser l’opció més econòmica, es un dels dispositius programables més barats del mercat. Degut
a que tenim un temps concret a l’hora de realitzar el projecte, Aquesta opció ens permet
estalviar molt de temps ja que es tracta d’ una disposició immediata i no a cal fer moltes
adaptacions.
4.4 Elecció de la placa Genuino Mega 2560Rev3
Per determinar quina placa arduino necessitem, es contempla la demanda del projecte,
començant per les entrades/sortides de la placa.
Entre sensors i actuadors, tal i com s’ observa en l’apartat 4.5.1, necessitem 40 entrades. Entre
altres motius esmentats en l’ altre part del projecte, es per això que es fa servir la placa Genuino
MEGA 2560 Rev3.
Aquesta placa disposa de 50 pins, que es poden assignar com entrades o sortides digitals, dels
quals 15 poden ser utilitzats com a sortides de PWM, 16 com a entrades analògiques. La placa
disposa de port sèrie, connexió USB, Power jack i boto de reset. A traves d’ un ordinador es fa
la transferència del software.
Característiques tècniques de la placa
Microcontrolador ATmega2560
Tensió d’ operació 7-12V
Tensió d’entrada recomanada 7-12V
Tensió d’entrada límit 6-20V
Entrades/Sortides digitals 54 (15 amb sortides PWM)
Pins d’entrades analògiques 16
Pin d’entrada/sortida de corrent 20mA
Pin de corren per 3.3V 50mA
Memòria flash 256KB dels quals 8 s’utilitzen per arrencar
SRAM 8KB
EEPROM 4KB
Velocitat de rellotge 16MHZ
Longitud 101.52mm
Amplada 53.2mm
Pes 37g
Fig. 4.10. Característiques Placa Arduino
4.5 Arduino Software (IDE)
La placa del projecte treballa a través d’un software anomenat IDE (Integrated Development
Environment).
Aquest Software s’obté a través de la pagina oficial d’arduino. En aquesta pagina es troba la
descripció pas a pas sobre com descarregar e instal·lar-lo al PC.
Aquest software conté un editor de text on s’escriu el codi, un àrea de missatges, una consola de
test on veurem les sortides de test inclosos els missatges d’errors i altres dades, una barra
d’eines amb botons per funcions comuns, com comprovar i carregar programes, obrir o guardar
programes.
Fig. 4.11. sketch_jun18a Arduino 1.6.9
Seguidament s’observen algunes icones amb la seva funció descrita.
Compilació (comprova que no hi hagin errors en el codi).
Carrega (Complia i carrega el codi a la placa).
Crear un nou codi.
/ / Obre / Guarda / Monitor serie.
4.5.1 Programació
Introducció
Tal y com es pot observar a la figura 4.3, l’estructura de programació d’arduino necessita com a
mínim dues parts perquè s’executi el programa.
• set up() la qual, s’ executarà només una vegada al començar el programa.
Aquesta part s’encarrega de la configuració inicial i contindrà la declaració de
variables.
• Loop() tal i com indica la paraula, es tracta d’un bucle. Aquesta part
s’executarà contínuament, encarregant-se de la lectura de les entrades, i de
l’escriptura de les sortides.
Variables
Declarar una variable en Arduino es assignar-li un nom, un tipus i un valor. En el següent
exemple, es crea una variable tel tipus enter, anomenada Tev1 i se l´hi assigna un valor 0
int Tev1 = 0 ; //Declaració de la variable Tev1 del tipus enter se li asigna un valor
0
La següent taula, recull el tipus, mesura, rang i algunes observacions que ajuden a entendre la
utilitat de les variables.
Tipus Byte Rang Observacions
boolean 0.125 Verdader o fals (0 o 1) Nomes te 2 estats
char 1 -128 a 128
Utilitzades per
representar un codi de
caràcter ASCII
byte 1 0 a 255
Emmagatzemar poc
espai
int 2 -32.768 a 32.767
Doble que un byte, pot
emmagatzemar valors
negatius
unsigned int 2 0 a 65.536
Es més precís que un int
però no disposa de valors
negatius
long 4 -2.147483648 a 2.147483647
Per representar nombres
molt grans
unsigned long 4 0 a 4.294967295
Més precisió que l’
anterior però nomes
Abarca valors positius
float 4 -3.4028235E+38 a3.4028235E+38
Emmagatzema valors
amb coma flotant
double 8 El doble que del tipus float
Emmagatzemar valors
molt grans
Fig. 4.13. Taula variables
Funcions
Per dissenyar el programa s’utilitzen funcions. Les funcions son blocs de codi que contenen un
conjunt d’estaments que s’executen quan el fil del programa passa per aquesta.
Les funcions es declaren associades a un tipus dels mencionats a la taula 4.13. La funció
retornarà un valor del tipus que ha estat assignada. Si es desitja que la funció no retorni ningun
valor, cal posar davant void, “tipus buida”.
Un cop declarat el tipus que es desitja que et retorni la funció, s’ escriu el nom de la funció i
entre parèntesis els paràmetres que s’han de complir per que aquesta s’executi.
Al costat de cara línia de codi, podem adjuntar un comentari posant davant des barres que
impediran que el fil del programa passi a través d’elles.
Seguidament tenim un exemple de l’estructura del codi d’una funció.
type NomDeLaFuncio (Parametres amb condicions) { // nota
Tasca a realitzar
}
En aquesta memòria s’explica les funcions utilitzades al projecte. En el cas que es desitgi
profunditzar en aquest tema, en el següent enllaç trobarem informació gratuïta.
https://www.arduino.cc/en/Tutorial/BuiltInExamples
Entrades/sortides Digitals
pinMode (pin,mode)
Pin: S’assigna el número de pin de la placa
Mode: S’ordena si desitgem que treballi com a entrada o com a sortida
(INPUT/OUTPUT).
Seguidament al exemple on s’assigna el pin 4 com entrada.
pinMode (4,INPUT); // Pin nº4 es una entrada
Condició IF
Aquesta funció consisteix en que si es compleix una condició s’executa una part del programa.
Per exemple:
Tenint en compte que prèvia ment s’ han declarat les variables utilitzades, en el següent
exemple s’observa com condiciona la funció.
If (variable1 = HIGH) // si la variable1 esta en valor alt
{
Valor = 10; // la variable valor es = 0
}
else // si no
{
Valor = 0; // la variable valor serà igul a 0
}
Escriure i llegir pins digitals
En el següent exemple llegim el valor de la entrada numero 0 i l’emmagatzemem a la variable
plus.
Plus = digitalRead(0);
En el següent exemple escrivim un 1 lògic a la sortida 2 declarada prèviament.
DigitalWrite (2,HIGH);
Escriure valors a pins PWM i la condició FOR
Alguns dels pins de la placa arduino estan marcats amb el text PWM (Pulse-width modulation)
modulació d’amplada de pols. Això el que fa es regular el temps que esta encès i apagat molt
ràpidament de manera que aconseguim valors entremitjos.
Si escrivim un valor analògic tenim que tindre en compte que a 255 el pin donarà la màxima
tensió y a 0 deixarà de donar.
El següent exemple ajuda a la comprensió
Cons tint led = 2; // avisem que connectarem un led al pin 2
Int intensitat;
Void set up ()
{
pinMode (led, OUTPUT); // declarem el pin 2 com a sortida
}
Void loop ()
{
Fig. 4.1. Estructura PLC i programa per diagrama de contactes
Perquè un PLC compleixi amb la seva funció a controlar, es necessari programar-lo tenint en
compte les entrades/sortides i el funcionament desitjat .
AVANTATGES INCONVENIENTS
• Fiabilitat
• Consum
• Preu elevat
• Complexitat de programació
• Dissenyat per a processos industrials
Fig. 4.2. Taula avantatges PLC
4.1.2 Arduino
Arduino és una plataforma de hardware lliure, que consisteix en una placa amb
microcontrolador Atmel i AVR i un entorn de desenvolupament que implementa el llenguatge
de programació Prcocessing/Wiring i el carregador d’ arrencada (boot loader) que corra a la
placa, dissenyat per facilitar l’ us de l’ electrònica en projectes multidisciplinaris.
Sortides
Temps
Per poder treballar amb el temps real es necessari que ens descarreguem la llibreria Time.
Descarregar-la e instal·larla es molt senzill, a la pagina oficial de Arduino explica com
descarregar e instal·lar llibreries. El següent esquema ajuda a entendre el funcionament de la
llibreria.
#include <Time.h> // Incloem la llibreria al programa
int hora = 0; // Servirà per guardar el valor de les hores
int minut = 0; // Servirà per guardar el valor de les minuts
int segon = 0; // Servirà per guardar el valor de les segons
void setup() {
setTime (00,00,00,03,8,2016); // Arduino en hora (hores, minuts, segons, mesos, anys)
}
Void loop() {
time_t t = now(); //la variable t tipus time_t pren l'hora actual
hora = hour(t); // la variable hora pren el valor de la hora actual utilitzant la funció
minut = minute(); // la variable minut pren el valor del minut actual
segon = second(); // la variable segon pren el valor del segon actual
}
Inclou la llibreria, creem variables destinades a enmagatzemanr el valor de les hores, minuts i
segons en variables del tipus enter, posem en hora l’Arduino. Dins el void loop crem una
variable tipus time_t a la qual li assignem el valor actual del temps a traves de la funció de la
llibreria. Després a les hores, als minuts i als segons els hi assignem el valor a trabes de la
funció.
Interrupció
A mesura que vagin sortint, les explico
4.6 Entrades/Sortides Digitals i analògiques
Cadascun dels pins digitals, es poden assignar com a entrada o sortida. Cada pin pot
proporcionar o rebre, un màxim de 40mA. Disposa d’ una resistència de pull-up ( desconnectat
per defecte de 20 a 50Kohm.
En les següents taules es pot apreciar cada una de les entrades/sortides utilitzades en aquesta
part del projecte.
Entrades Sistema de reg
1- Sonda humitat
2- Sonda situada a la part de baix del dipòsit 1
3- Sonda situada a la part de baix del dipòsit 2
4- Sonda situada a la part de baix del dipòsit 3
5- Sonda situada a la part de baix del dipòsit 4
6- Sonda situada a la meitat del dipòsit 1
7- Sonda situada a la meitat del dipòsit 2
8- Sonda situada a la meitat del dipòsit 3
9- Sonda situada a la meitat del dipòsit 4
10- Sonda situada a la part de dal del dipòsit 1
11- Sonda situada a la part de dal del dipòsit 2
12- Sonda situada a la part de dal del dipòsit 3
13- Sonda situada a la part de dal del dipòsit 4
14- Polsador reg manual zona 1
15- Polsador reg manual zona 2
16- Polsador reg manual zona 3
17- Polsador reg manual zona 4
18- Selector manual o automàtic
Sortides sistema de reg
19- Electrovàlvula zona 1
20- Electrovàlvula zona 2
21- Electrovàlvula zona 3
22- Electrovàlvula zona 4
23- Indicador verd (dipòsit ple) zona 1
24- Indicador groc (dipòsit a la meitat) zona 1
25- Indicador vermell (dipòsit amb baix nivell) zona 1
26- Indicador verd (dipòsit ple) zona 2
27- Indicador groc (dipòsit a la meitat) zona 2
28- Indicador vermell (dipòsit amb baix nivell) zona 2
29- Indicador verd (dipòsit ple) zona 3
30- Indicador groc (dipòsit a la meitat) zona 3
31- Indicador vermell (dipòsit amb baix nivell) zona 3
32- Indicador verd (dipòsit ple) zona 4
33- Indicador groc (dipòsit a la meitat) zona 4
34- Indicador vermell (dipòsit amb baix nivell) zona 4
Fig. 4.14. Taula Entrades/Sortides Sistema de reg
Entrades Sistema d’alarma
35- Sensor infraroig 1
36- Sensor infraroig 2
Fig. 4.15. Taula Entrades/Sortides Sistema d’alarma
Sortides Sistema d’alarma
37- Sirena
4.6 Desenvolupament del software
En aquesta part es troba el codi del programa realitzat per el sistema d’alarma i el sistema de
reg.
Abans de començar a llegir el desenvolupament del software a la part 4.4.2, si no es disposen de
coneixements de programació en arruïno es aconsellable
Anexes
En la seguent imatge es veu com es distribueixen els pins.
Seguidament es troba la taula de mapeig dels pins i les característiques de la placa
Número de pin Nom del pin Nom del pin mapejat
1 PG5 ( OC0B ) Digital pin 4 (PWM)
2 PE0 ( RXD0/PCINT8 ) Digital pin 0 (RX0)
3 PE1 ( TXD0 ) Digital pin 1 (TX0)
4 PE2 ( XCK0/AIN0 )
5 PE3 ( OC3A/AIN1 ) Digital pin 5 (PWM)
6 PE4 ( OC3B/INT4 ) Digital pin 2 (PWM)
7 PE5 ( OC3C/INT5 ) Digital pin 3 (PWM)
8 PE6 ( T3/INT6 )
9 PE7 ( CLKO/ICP3/INT7 )
10 VCC VCC
11 GND GND
12 PH0 ( RXD2 ) Digital pin 17 (RX2)
13 PH1 ( TXD2 ) Digital pin 16 (TX2)
14 PH2 ( XCK2 )
15 PH3 ( OC4A ) Digital pin 6 (PWM)
16 PH4 ( OC4B ) Digital pin 7 (PWM)
17 PH5 ( OC4C ) Digital pin 8 (PWM)
18 PH6 ( OC2B ) Digital pin 9 (PWM)
19 PB0 ( SS/PCINT0 ) Digital pin 53 (SS)
20 PB1 ( SCK/PCINT1 ) Digital pin 52 (SCK)
21 PB2 ( MOSI/PCINT2 ) Digital pin 51 (MOSI)
22 PB3 ( MISO/PCINT3 ) Digital pin 50 (MISO)
23 PB4 ( OC2A/PCINT4 ) Digital pin 10 (PWM)
24 PB5 ( OC1A/PCINT5 ) Digital pin 11 (PWM)
25 PB6 ( OC1B/PCINT6 ) Digital pin 12 (PWM)
26 PB7 ( OC0A/OC1C/PCINT7 ) Digital pin 13 (PWM)
27 PH7 ( T4 )
28 PG3 ( TOSC2 )
29 PG4 ( TOSC1 )
30 RESET RESET
31 VCC VCC
32 GND GND
33 XTAL2 XTAL2
34 XTAL1 XTAL1
35 PL0 ( ICP4 ) Digital pin 49
36 PL1 ( ICP5 ) Digital pin 48
37 PL2 ( T5 ) Digital pin 47
38 PL3 ( OC5A ) Digital pin 46 (PWM)
39 PL4 ( OC5B ) Digital pin 45 (PWM)
40 PL5 ( OC5C ) Digital pin 44 (PWM)
41 PL6 Digital pin 43
42 PL7 Digital pin 42
43 PD0 ( SCL/INT0 ) Digital pin 21 (SCL)
44 PD1 ( SDA/INT1 ) Digital pin 20 (SDA)
45 PD2 ( RXDI/INT2 ) Digital pin 19 (RX1)
46 PD3 ( TXD1/INT3 ) Digital pin 18 (TX1)
47 PD4 ( ICP1 )
48 PD5 ( XCK1 )
49 PD6 ( T1 )
50 PD7 ( T0 ) Digital pin 38
51 PG0 ( WR ) Digital pin 41
52 PG1 ( RD ) Digital pin 40
53 PC0 ( A8 ) Digital pin 37
54 PC1 ( A9 ) Digital pin 36
55 PC2 ( A10 ) Digital pin 35
56 PC3 ( A11 ) Digital pin 34
57 PC4 ( A12 ) Digital pin 33
58 PC5 ( A13 ) Digital pin 32
59 PC6 ( A14 ) Digital pin 31
60 PC7 ( A15 ) Digital pin 30
61 VCC VCC
62 GND GND
63 PJ0 ( RXD3/PCINT9 ) Digital pin 15 (RX3)
64 PJ1 ( TXD3/PCINT10 ) Digital pin 14 (TX3)
65 PJ2 ( XCK3/PCINT11 )
66 PJ3 ( PCINT12 )
67 PJ4 ( PCINT13 )
68 PJ5 ( PCINT14 )
69 PJ6 ( PCINT 15 )
70 PG2 ( ALE ) Digital pin 39
71 PA7 ( AD7 ) Digital pin 29
72 PA6 ( AD6 ) Digital pin 28
73 PA5 ( AD5 ) Digital pin 27
74 PA4 ( AD4 ) Digital pin 26
75 PA3 ( AD3 ) Digital pin 25
76 PA2 ( AD2 ) Digital pin 24
77 PA1 ( AD1 ) Digital pin 23
78 PA0 ( AD0 ) Digital pin 22
79 PJ7
80 VCC VCC
81 GND GND
82 PK7 ( ADC15/PCINT23 ) Analog pin 15
83 PK6 ( ADC14/PCINT22 ) Analog pin 14
84 PK5 ( ADC13/PCINT21 ) Analog pin 13
85 PK4 ( ADC12/PCINT20 ) Analog pin 12
86 PK3 ( ADC11/PCINT19 ) Analog pin 11
87 PK2 ( ADC10/PCINT18 ) Analog pin 10
88 PK1 ( ADC9/PCINT17 ) Analog pin 9
89 PK0 ( ADC8/PCINT16 ) Analog pin 8
90 PF7 ( ADC7 ) Analog pin 7
91 PF6 ( ADC6 ) Analog pin 6
92 PF5 ( ADC5/TMS ) Analog pin 5
93 PF4 ( ADC4/TMK ) Analog pin 4
94 PF3 ( ADC3 ) Analog pin 3
95 PF2 ( ADC2 ) Analog pin 2
96 PF1 ( ADC1 ) Analog pin 1
97 PF0 ( ADC0 ) Analog pin 0
98 AREF Analog Reference
99 GND GND
100 AVCC VCC
https://ramaucsa.wordpress.com/2011/01/31/concepto-plc-controlador-logico-programable/
http://tecnologiarobotica.com/post/microcontroladores/

More Related Content

Similar to Sistema de control (20)

Sistema de control
Sistema de controlSistema de control
Sistema de control
 
Memoria
MemoriaMemoria
Memoria
 
Presentació pfc disseny mòdul knx
Presentació pfc disseny mòdul knxPresentació pfc disseny mòdul knx
Presentació pfc disseny mòdul knx
 
PARTS CPU
PARTS CPUPARTS CPU
PARTS CPU
 
Treball bo
Treball boTreball bo
Treball bo
 
Tfc PLC Obert
Tfc PLC ObertTfc PLC Obert
Tfc PLC Obert
 
Ssp06
Ssp06Ssp06
Ssp06
 
Anàlisis, disseny i construcció d\’un robot educatiu basat en microcontrolado...
Anàlisis, disseny i construcció d\’un robot educatiu basat en microcontrolado...Anàlisis, disseny i construcció d\’un robot educatiu basat en microcontrolado...
Anàlisis, disseny i construcció d\’un robot educatiu basat en microcontrolado...
 
TFC PLC Obert Diapos
TFC PLC Obert DiaposTFC PLC Obert Diapos
TFC PLC Obert Diapos
 
Manual usuari SNOB CAT
Manual usuari SNOB CATManual usuari SNOB CAT
Manual usuari SNOB CAT
 
UT6 Arduino
UT6 ArduinoUT6 Arduino
UT6 Arduino
 
Entorn Tangible Digital
Entorn Tangible DigitalEntorn Tangible Digital
Entorn Tangible Digital
 
Ssp05
Ssp05Ssp05
Ssp05
 
Arduino
ArduinoArduino
Arduino
 
Maquinari
MaquinariMaquinari
Maquinari
 
Microprocesadors i ordinador pqpi
Microprocesadors i ordinador pqpiMicroprocesadors i ordinador pqpi
Microprocesadors i ordinador pqpi
 
L'ordinador per dins
L'ordinador per dinsL'ordinador per dins
L'ordinador per dins
 
Treball_Final_de_Grau_a_l_EPS_de_la_UIB - 14.09.22.pdf
Treball_Final_de_Grau_a_l_EPS_de_la_UIB - 14.09.22.pdfTreball_Final_de_Grau_a_l_EPS_de_la_UIB - 14.09.22.pdf
Treball_Final_de_Grau_a_l_EPS_de_la_UIB - 14.09.22.pdf
 
Unitat 5 2013 5
Unitat 5 2013 5Unitat 5 2013 5
Unitat 5 2013 5
 
Mmix M1 Uf2 Apunts
Mmix M1 Uf2 ApuntsMmix M1 Uf2 Apunts
Mmix M1 Uf2 Apunts
 

More from Carles López Gómez (20)

7 adaptació
7 adaptació7 adaptació
7 adaptació
 
Prototipus
PrototipusPrototipus
Prototipus
 
Instalació fotovoltaica
Instalació fotovoltaicaInstalació fotovoltaica
Instalació fotovoltaica
 
Memoria 2 joan
Memoria 2 joanMemoria 2 joan
Memoria 2 joan
 
Sistema de reg pfg
Sistema de reg pfgSistema de reg pfg
Sistema de reg pfg
 
Sistema d'alarma pfg
Sistema d'alarma pfgSistema d'alarma pfg
Sistema d'alarma pfg
 
Maqueta projecta
Maqueta projectaMaqueta projecta
Maqueta projecta
 
Maqueta projecta
Maqueta projectaMaqueta projecta
Maqueta projecta
 
Maqueta projecta
Maqueta projectaMaqueta projecta
Maqueta projecta
 
Introducció pfg
Introducció pfgIntroducció pfg
Introducció pfg
 
Introducció
IntroduccióIntroducció
Introducció
 
Sistema de reg
Sistema de regSistema de reg
Sistema de reg
 
Sistema d'alarma
Sistema d'alarmaSistema d'alarma
Sistema d'alarma
 
Introducció
IntroduccióIntroducció
Introducció
 
Sistema d'alarma
Sistema d'alarmaSistema d'alarma
Sistema d'alarma
 
Sistema de reg
Sistema de regSistema de reg
Sistema de reg
 
Sistema de reg
Sistema de regSistema de reg
Sistema de reg
 
Introducció
IntroduccióIntroducció
Introducció
 
Introducció
IntroduccióIntroducció
Introducció
 
Introducció
IntroduccióIntroducció
Introducció
 

Sistema de control

  • 1. Taula de continguts del sistema de control 4. Sistema de control..................................................................................................................... 1 4.1 Estudi de mercat del sistema de control.............................................................................. 1 4.1.1 PLC .............................................................................................................................. 2 4.1.2 Arduino ........................................................................................................................ 3 4.1.3 Microcontrolador PIC .................................................................................................. 4 4.2 Criteris de selecció .............................................................................................................. 5 4.3 Valoració............................................................................................................................. 6 4.4 Elecció de la placa Genuino Mega 2560Rev3..................................................................... 7 4.4.1 Arduino Software (IDE)................................................................................................... 8 4.4.2 Programació ................................................................................................................. 9 4.5 Entrades/Sortides Digitals i analògiques........................................................................... 16 4.6 Desenvolupament del software ......................................................................................... 17 4. Sistema de control 4.1 Estudi de mercat del sistema de control
  • 2. En aquest apartat s’escull el tipus de controlador que serveix per poder adquirir las dades dels sensors i actuar sobre els actuadors. Un cop feta la recerca dels diferents sistemes de control al mercat, escollim els tres que més s’adapten a l’aplicació per estudiar-los una mica mes a fons. • PLC • Arduino • Microcontrolador PIC Els criteris a comparar entre els següents controladors corresponen a: • Econòmic • Quantitat de entrades/sortides • Facilitat d’instal·lació. 4.1.1 PLC Controlador lògic programable o PLC (Programable Logic Controller). Són dispositius electrònics molt utilitzats en l’automatització industrial. EntradasAlimentació
  • 3. Fig. 4.1. Estructura PLC i programa per diagrama de contactes Perquè un PLC compleixi amb la seva funció a controlar, es necessari programar-lo tenint en compte les entrades/sortides i el funcionament desitjat . AVANTATGES INCONVENIENTS • Fiabilitat • Consum • Preu elevat • Complexitat de programació • Dissenyat per a processos industrials Fig. 4.2. Taula avantatges PLC 4.1.2 Arduino Arduino és una plataforma de hardware lliure, que consisteix en una placa amb microcontrolador Atmel i AVR i un entorn de desenvolupament que implementa el llenguatge de programació Prcocessing/Wiring i el carregador d’ arrencada (boot loader) que corra a la placa, dissenyat per facilitar l’ us de l’ electrònica en projectes multidisciplinaris. Sortides
  • 4. Es ideal per utilitzar en projectes basats en la educació degut al seu baix preu. Hi ha diferents tipus de plaques arduino, Es diferencien en el nombre i tipus d’ entrades/sortides, en la memòria, en la freqüència de treball, en la potencia i en el preu . Fig.4.3. Arduino UNO i Arduino MEGA AVANTATGES INCONVENIENTS • Baix cost • Compatibilitat d’ entorns • Consum • Codi obert • Poc fiable • Complexitat de programació Fig.4.4. Taula avantatges Arduino 4.1.3 Microcontrolador PIC Els PIC ( Peripheral Interface Controller) són una família de microcontroladores de tipus RISC fabricats per Microchip Technology Inc., originalment desenvolupats per a la divisió de microelectrònica de General Instrument. Es consideren petits ordinadors, en un sol circuit que inclouen, una CPU, una memòria RAM, una memòria ROM i una quantitat d’ entrades/sortides.
  • 5. Fig. 4.5. Microcontrolador PIC18F4550 i estructura interna Aquests microcontroladors, es troben a molts de dispositius electrònics, tant domèstics com industrials. Podem trobar diferents tipus de chips, des de 8 pins fins a més de 100. La funció de cada pin es diferent i aquesta ve relaxada en el data sheet del dispositiu. La programació en aquest cas, es molt variada. Pot ser des de llenguatge ensamblador fins a C. AVANTATGES INCONVENIENTS • Baix cost • Compatibilitat d’ entorns • Consum • Codi obert • Poc fiable • Complexitat de programació Fig.4.6. Taula avantatges Arduino 4.2 Criteris de selecció Per realitzar la comparació d’ alternatives per la implementació del sistema de control, utilitzarem un estudi multi criteri amb mitges ponderades. CRITERIS DEL CLIENT PES PERCENTATGE Cost 45 % Consum 10% Complexitat 15 % Temps disseny, muntatge i programació 10 %
  • 6. Nombre entrades/sortides 20% Fig. 4.7. Taula criteris sistema de control En la següent taula s’ avaluarà amb una puntuació del 0 al 10, cada una de les tres opcions. Cal destacar que en les 3 opcions podem arribar a tenir el nombre d’entrades desitjat. Degut a que El PLC te mòduls d’ampliació entrades/sortides, els pins del PIC varien en funció del model , i de la mateix manera l’ arduino en funció del que s’adquireixi, es disposen de més o menys entrades. Els altres criteris d’ avaluació estan explicats en l’ apartat 2.3. OPCIÓ/ CRITERI Cost CONSUM Complexitat TEMPS Num. Entrades/s ortides PLC 3 9 5 6 10 Arduino 8 9 7 6 10 Microcontrolador PIC 9 9 3 6 10 Fig. 4.8. Taula criteris opcions control La següent taula ens mostra el resultat final aplicant la ponderació de cada criteri a cada opció per tal de determinar la opció més adequada. OPCIÓ PUNTUACIÓ PONDERADA PLC 5.6 Arduino 8.15 Microcontrolador PIC 8 Fig. 4.9. taula ponderació control 4.3 Valoració Basant-nos en els criteris de selecció del apartat anterior, s’ observa que la millor opció segons els requeriments de la instal·lació i els criteris del client. Es realitza el sistema de control mitjançant arduino. L’ opció d’ utilitzar un PLC d’entrada sembla molt atractiva degut a la potencia del sistema. Per cal tenir en compte que aquests dispositius, estan dissenyats principalment per aplicacions industrials. L’opció de implementar un sistema de control mitjançant PIC no es mala idea, tal com s’observa a la taula de ponderació de control. La principal desavantatge es que en el cas de voler
  • 7. ampliar l’ instal·lació seria més complicat que en qualsevol de les dues opcions, a part s’ hauria de dissenyar una placa per poder fer-ne us Per tant l’opció més adient es la d’implementar un sistema de control mitjançant Arduino Tot i no ser l’opció més econòmica, es un dels dispositius programables més barats del mercat. Degut a que tenim un temps concret a l’hora de realitzar el projecte, Aquesta opció ens permet estalviar molt de temps ja que es tracta d’ una disposició immediata i no a cal fer moltes adaptacions. 4.4 Elecció de la placa Genuino Mega 2560Rev3 Per determinar quina placa arduino necessitem, es contempla la demanda del projecte, començant per les entrades/sortides de la placa. Entre sensors i actuadors, tal i com s’ observa en l’apartat 4.5.1, necessitem 40 entrades. Entre altres motius esmentats en l’ altre part del projecte, es per això que es fa servir la placa Genuino MEGA 2560 Rev3. Aquesta placa disposa de 50 pins, que es poden assignar com entrades o sortides digitals, dels quals 15 poden ser utilitzats com a sortides de PWM, 16 com a entrades analògiques. La placa disposa de port sèrie, connexió USB, Power jack i boto de reset. A traves d’ un ordinador es fa la transferència del software.
  • 8. Característiques tècniques de la placa Microcontrolador ATmega2560 Tensió d’ operació 7-12V Tensió d’entrada recomanada 7-12V Tensió d’entrada límit 6-20V Entrades/Sortides digitals 54 (15 amb sortides PWM) Pins d’entrades analògiques 16 Pin d’entrada/sortida de corrent 20mA Pin de corren per 3.3V 50mA Memòria flash 256KB dels quals 8 s’utilitzen per arrencar SRAM 8KB EEPROM 4KB Velocitat de rellotge 16MHZ Longitud 101.52mm Amplada 53.2mm Pes 37g Fig. 4.10. Característiques Placa Arduino 4.5 Arduino Software (IDE) La placa del projecte treballa a través d’un software anomenat IDE (Integrated Development Environment). Aquest Software s’obté a través de la pagina oficial d’arduino. En aquesta pagina es troba la descripció pas a pas sobre com descarregar e instal·lar-lo al PC. Aquest software conté un editor de text on s’escriu el codi, un àrea de missatges, una consola de test on veurem les sortides de test inclosos els missatges d’errors i altres dades, una barra d’eines amb botons per funcions comuns, com comprovar i carregar programes, obrir o guardar programes.
  • 9. Fig. 4.11. sketch_jun18a Arduino 1.6.9 Seguidament s’observen algunes icones amb la seva funció descrita. Compilació (comprova que no hi hagin errors en el codi). Carrega (Complia i carrega el codi a la placa). Crear un nou codi. / / Obre / Guarda / Monitor serie. 4.5.1 Programació Introducció Tal y com es pot observar a la figura 4.3, l’estructura de programació d’arduino necessita com a mínim dues parts perquè s’executi el programa. • set up() la qual, s’ executarà només una vegada al començar el programa. Aquesta part s’encarrega de la configuració inicial i contindrà la declaració de variables. • Loop() tal i com indica la paraula, es tracta d’un bucle. Aquesta part s’executarà contínuament, encarregant-se de la lectura de les entrades, i de l’escriptura de les sortides.
  • 10. Variables Declarar una variable en Arduino es assignar-li un nom, un tipus i un valor. En el següent exemple, es crea una variable tel tipus enter, anomenada Tev1 i se l´hi assigna un valor 0 int Tev1 = 0 ; //Declaració de la variable Tev1 del tipus enter se li asigna un valor 0 La següent taula, recull el tipus, mesura, rang i algunes observacions que ajuden a entendre la utilitat de les variables. Tipus Byte Rang Observacions boolean 0.125 Verdader o fals (0 o 1) Nomes te 2 estats char 1 -128 a 128 Utilitzades per representar un codi de caràcter ASCII
  • 11. byte 1 0 a 255 Emmagatzemar poc espai int 2 -32.768 a 32.767 Doble que un byte, pot emmagatzemar valors negatius unsigned int 2 0 a 65.536 Es més precís que un int però no disposa de valors negatius long 4 -2.147483648 a 2.147483647 Per representar nombres molt grans unsigned long 4 0 a 4.294967295 Més precisió que l’ anterior però nomes Abarca valors positius float 4 -3.4028235E+38 a3.4028235E+38 Emmagatzema valors amb coma flotant double 8 El doble que del tipus float Emmagatzemar valors molt grans Fig. 4.13. Taula variables Funcions Per dissenyar el programa s’utilitzen funcions. Les funcions son blocs de codi que contenen un conjunt d’estaments que s’executen quan el fil del programa passa per aquesta. Les funcions es declaren associades a un tipus dels mencionats a la taula 4.13. La funció retornarà un valor del tipus que ha estat assignada. Si es desitja que la funció no retorni ningun valor, cal posar davant void, “tipus buida”. Un cop declarat el tipus que es desitja que et retorni la funció, s’ escriu el nom de la funció i entre parèntesis els paràmetres que s’han de complir per que aquesta s’executi. Al costat de cara línia de codi, podem adjuntar un comentari posant davant des barres que impediran que el fil del programa passi a través d’elles. Seguidament tenim un exemple de l’estructura del codi d’una funció. type NomDeLaFuncio (Parametres amb condicions) { // nota Tasca a realitzar }
  • 12. En aquesta memòria s’explica les funcions utilitzades al projecte. En el cas que es desitgi profunditzar en aquest tema, en el següent enllaç trobarem informació gratuïta. https://www.arduino.cc/en/Tutorial/BuiltInExamples Entrades/sortides Digitals pinMode (pin,mode) Pin: S’assigna el número de pin de la placa Mode: S’ordena si desitgem que treballi com a entrada o com a sortida (INPUT/OUTPUT). Seguidament al exemple on s’assigna el pin 4 com entrada. pinMode (4,INPUT); // Pin nº4 es una entrada Condició IF Aquesta funció consisteix en que si es compleix una condició s’executa una part del programa. Per exemple: Tenint en compte que prèvia ment s’ han declarat les variables utilitzades, en el següent exemple s’observa com condiciona la funció. If (variable1 = HIGH) // si la variable1 esta en valor alt { Valor = 10; // la variable valor es = 0 } else // si no { Valor = 0; // la variable valor serà igul a 0 }
  • 13. Escriure i llegir pins digitals En el següent exemple llegim el valor de la entrada numero 0 i l’emmagatzemem a la variable plus. Plus = digitalRead(0); En el següent exemple escrivim un 1 lògic a la sortida 2 declarada prèviament. DigitalWrite (2,HIGH); Escriure valors a pins PWM i la condició FOR Alguns dels pins de la placa arduino estan marcats amb el text PWM (Pulse-width modulation) modulació d’amplada de pols. Això el que fa es regular el temps que esta encès i apagat molt ràpidament de manera que aconseguim valors entremitjos. Si escrivim un valor analògic tenim que tindre en compte que a 255 el pin donarà la màxima tensió y a 0 deixarà de donar. El següent exemple ajuda a la comprensió Cons tint led = 2; // avisem que connectarem un led al pin 2 Int intensitat; Void set up () { pinMode (led, OUTPUT); // declarem el pin 2 com a sortida } Void loop () {
  • 14. Fig. 4.1. Estructura PLC i programa per diagrama de contactes Perquè un PLC compleixi amb la seva funció a controlar, es necessari programar-lo tenint en compte les entrades/sortides i el funcionament desitjat . AVANTATGES INCONVENIENTS • Fiabilitat • Consum • Preu elevat • Complexitat de programació • Dissenyat per a processos industrials Fig. 4.2. Taula avantatges PLC 4.1.2 Arduino Arduino és una plataforma de hardware lliure, que consisteix en una placa amb microcontrolador Atmel i AVR i un entorn de desenvolupament que implementa el llenguatge de programació Prcocessing/Wiring i el carregador d’ arrencada (boot loader) que corra a la placa, dissenyat per facilitar l’ us de l’ electrònica en projectes multidisciplinaris. Sortides
  • 15. Temps Per poder treballar amb el temps real es necessari que ens descarreguem la llibreria Time. Descarregar-la e instal·larla es molt senzill, a la pagina oficial de Arduino explica com descarregar e instal·lar llibreries. El següent esquema ajuda a entendre el funcionament de la llibreria. #include <Time.h> // Incloem la llibreria al programa int hora = 0; // Servirà per guardar el valor de les hores int minut = 0; // Servirà per guardar el valor de les minuts int segon = 0; // Servirà per guardar el valor de les segons void setup() { setTime (00,00,00,03,8,2016); // Arduino en hora (hores, minuts, segons, mesos, anys) } Void loop() { time_t t = now(); //la variable t tipus time_t pren l'hora actual hora = hour(t); // la variable hora pren el valor de la hora actual utilitzant la funció minut = minute(); // la variable minut pren el valor del minut actual segon = second(); // la variable segon pren el valor del segon actual } Inclou la llibreria, creem variables destinades a enmagatzemanr el valor de les hores, minuts i segons en variables del tipus enter, posem en hora l’Arduino. Dins el void loop crem una variable tipus time_t a la qual li assignem el valor actual del temps a traves de la funció de la llibreria. Després a les hores, als minuts i als segons els hi assignem el valor a trabes de la funció. Interrupció A mesura que vagin sortint, les explico
  • 16. 4.6 Entrades/Sortides Digitals i analògiques Cadascun dels pins digitals, es poden assignar com a entrada o sortida. Cada pin pot proporcionar o rebre, un màxim de 40mA. Disposa d’ una resistència de pull-up ( desconnectat per defecte de 20 a 50Kohm. En les següents taules es pot apreciar cada una de les entrades/sortides utilitzades en aquesta part del projecte. Entrades Sistema de reg 1- Sonda humitat 2- Sonda situada a la part de baix del dipòsit 1 3- Sonda situada a la part de baix del dipòsit 2 4- Sonda situada a la part de baix del dipòsit 3 5- Sonda situada a la part de baix del dipòsit 4 6- Sonda situada a la meitat del dipòsit 1 7- Sonda situada a la meitat del dipòsit 2 8- Sonda situada a la meitat del dipòsit 3 9- Sonda situada a la meitat del dipòsit 4 10- Sonda situada a la part de dal del dipòsit 1 11- Sonda situada a la part de dal del dipòsit 2 12- Sonda situada a la part de dal del dipòsit 3 13- Sonda situada a la part de dal del dipòsit 4 14- Polsador reg manual zona 1 15- Polsador reg manual zona 2 16- Polsador reg manual zona 3 17- Polsador reg manual zona 4 18- Selector manual o automàtic Sortides sistema de reg 19- Electrovàlvula zona 1 20- Electrovàlvula zona 2 21- Electrovàlvula zona 3 22- Electrovàlvula zona 4 23- Indicador verd (dipòsit ple) zona 1 24- Indicador groc (dipòsit a la meitat) zona 1 25- Indicador vermell (dipòsit amb baix nivell) zona 1 26- Indicador verd (dipòsit ple) zona 2 27- Indicador groc (dipòsit a la meitat) zona 2 28- Indicador vermell (dipòsit amb baix nivell) zona 2 29- Indicador verd (dipòsit ple) zona 3 30- Indicador groc (dipòsit a la meitat) zona 3 31- Indicador vermell (dipòsit amb baix nivell) zona 3 32- Indicador verd (dipòsit ple) zona 4 33- Indicador groc (dipòsit a la meitat) zona 4 34- Indicador vermell (dipòsit amb baix nivell) zona 4 Fig. 4.14. Taula Entrades/Sortides Sistema de reg Entrades Sistema d’alarma 35- Sensor infraroig 1
  • 17. 36- Sensor infraroig 2 Fig. 4.15. Taula Entrades/Sortides Sistema d’alarma Sortides Sistema d’alarma 37- Sirena 4.6 Desenvolupament del software En aquesta part es troba el codi del programa realitzat per el sistema d’alarma i el sistema de reg. Abans de començar a llegir el desenvolupament del software a la part 4.4.2, si no es disposen de coneixements de programació en arruïno es aconsellable
  • 18. Anexes En la seguent imatge es veu com es distribueixen els pins.
  • 19. Seguidament es troba la taula de mapeig dels pins i les característiques de la placa Número de pin Nom del pin Nom del pin mapejat 1 PG5 ( OC0B ) Digital pin 4 (PWM) 2 PE0 ( RXD0/PCINT8 ) Digital pin 0 (RX0) 3 PE1 ( TXD0 ) Digital pin 1 (TX0) 4 PE2 ( XCK0/AIN0 ) 5 PE3 ( OC3A/AIN1 ) Digital pin 5 (PWM) 6 PE4 ( OC3B/INT4 ) Digital pin 2 (PWM) 7 PE5 ( OC3C/INT5 ) Digital pin 3 (PWM)
  • 20. 8 PE6 ( T3/INT6 ) 9 PE7 ( CLKO/ICP3/INT7 ) 10 VCC VCC 11 GND GND 12 PH0 ( RXD2 ) Digital pin 17 (RX2) 13 PH1 ( TXD2 ) Digital pin 16 (TX2) 14 PH2 ( XCK2 ) 15 PH3 ( OC4A ) Digital pin 6 (PWM) 16 PH4 ( OC4B ) Digital pin 7 (PWM) 17 PH5 ( OC4C ) Digital pin 8 (PWM) 18 PH6 ( OC2B ) Digital pin 9 (PWM) 19 PB0 ( SS/PCINT0 ) Digital pin 53 (SS) 20 PB1 ( SCK/PCINT1 ) Digital pin 52 (SCK) 21 PB2 ( MOSI/PCINT2 ) Digital pin 51 (MOSI) 22 PB3 ( MISO/PCINT3 ) Digital pin 50 (MISO) 23 PB4 ( OC2A/PCINT4 ) Digital pin 10 (PWM) 24 PB5 ( OC1A/PCINT5 ) Digital pin 11 (PWM) 25 PB6 ( OC1B/PCINT6 ) Digital pin 12 (PWM) 26 PB7 ( OC0A/OC1C/PCINT7 ) Digital pin 13 (PWM) 27 PH7 ( T4 ) 28 PG3 ( TOSC2 ) 29 PG4 ( TOSC1 ) 30 RESET RESET 31 VCC VCC 32 GND GND 33 XTAL2 XTAL2 34 XTAL1 XTAL1 35 PL0 ( ICP4 ) Digital pin 49 36 PL1 ( ICP5 ) Digital pin 48 37 PL2 ( T5 ) Digital pin 47 38 PL3 ( OC5A ) Digital pin 46 (PWM) 39 PL4 ( OC5B ) Digital pin 45 (PWM) 40 PL5 ( OC5C ) Digital pin 44 (PWM) 41 PL6 Digital pin 43 42 PL7 Digital pin 42 43 PD0 ( SCL/INT0 ) Digital pin 21 (SCL) 44 PD1 ( SDA/INT1 ) Digital pin 20 (SDA) 45 PD2 ( RXDI/INT2 ) Digital pin 19 (RX1)
  • 21. 46 PD3 ( TXD1/INT3 ) Digital pin 18 (TX1) 47 PD4 ( ICP1 ) 48 PD5 ( XCK1 ) 49 PD6 ( T1 ) 50 PD7 ( T0 ) Digital pin 38 51 PG0 ( WR ) Digital pin 41 52 PG1 ( RD ) Digital pin 40 53 PC0 ( A8 ) Digital pin 37 54 PC1 ( A9 ) Digital pin 36 55 PC2 ( A10 ) Digital pin 35 56 PC3 ( A11 ) Digital pin 34 57 PC4 ( A12 ) Digital pin 33 58 PC5 ( A13 ) Digital pin 32 59 PC6 ( A14 ) Digital pin 31 60 PC7 ( A15 ) Digital pin 30 61 VCC VCC 62 GND GND 63 PJ0 ( RXD3/PCINT9 ) Digital pin 15 (RX3) 64 PJ1 ( TXD3/PCINT10 ) Digital pin 14 (TX3) 65 PJ2 ( XCK3/PCINT11 ) 66 PJ3 ( PCINT12 ) 67 PJ4 ( PCINT13 ) 68 PJ5 ( PCINT14 ) 69 PJ6 ( PCINT 15 ) 70 PG2 ( ALE ) Digital pin 39 71 PA7 ( AD7 ) Digital pin 29 72 PA6 ( AD6 ) Digital pin 28 73 PA5 ( AD5 ) Digital pin 27 74 PA4 ( AD4 ) Digital pin 26 75 PA3 ( AD3 ) Digital pin 25 76 PA2 ( AD2 ) Digital pin 24 77 PA1 ( AD1 ) Digital pin 23 78 PA0 ( AD0 ) Digital pin 22 79 PJ7 80 VCC VCC 81 GND GND 82 PK7 ( ADC15/PCINT23 ) Analog pin 15 83 PK6 ( ADC14/PCINT22 ) Analog pin 14
  • 22. 84 PK5 ( ADC13/PCINT21 ) Analog pin 13 85 PK4 ( ADC12/PCINT20 ) Analog pin 12 86 PK3 ( ADC11/PCINT19 ) Analog pin 11 87 PK2 ( ADC10/PCINT18 ) Analog pin 10 88 PK1 ( ADC9/PCINT17 ) Analog pin 9 89 PK0 ( ADC8/PCINT16 ) Analog pin 8 90 PF7 ( ADC7 ) Analog pin 7 91 PF6 ( ADC6 ) Analog pin 6 92 PF5 ( ADC5/TMS ) Analog pin 5 93 PF4 ( ADC4/TMK ) Analog pin 4 94 PF3 ( ADC3 ) Analog pin 3 95 PF2 ( ADC2 ) Analog pin 2 96 PF1 ( ADC1 ) Analog pin 1 97 PF0 ( ADC0 ) Analog pin 0 98 AREF Analog Reference 99 GND GND 100 AVCC VCC https://ramaucsa.wordpress.com/2011/01/31/concepto-plc-controlador-logico-programable/ http://tecnologiarobotica.com/post/microcontroladores/