Documentos de Académico
Documentos de Profesional
Documentos de Cultura
L1
ARD1
U1
10
COM
1 18
1
2
1B 1C
2 17 220V
ON
Reset BTN
2B 2C
DSW1 3 16
ON
3B 3C
4 15
www.TheEngineeringProjects.com
DIPSW_2 4B 4C
5 14 RL1 V1
OFF
5B 5C
AREF 6 13 5V VSINE
6B 6C
7 12
13 7B 7C
4
3
PB5/SCK 8 11
12 8B 8C
RESET PB4/MISO
11
~PB3/MOSI/OC2A ULN2803
10
VCC ~PB2/SS/OC1B
9
GND ~ PB1/OC1A 8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121
7
ANALOG IN
PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3
PC3/ADC3 ~ PD3/INT1 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARDUINO UNO
Componentes utilizados: 7SEG-COM-CAT-GRN, ARDUINO UNO, DIPSW_2, LAMP, RELAY, RES, ULN2803, VSINE.
void setup() {
for(int i=2;i<=9;++i){
pinMode(i, OUTPUT);
}
pinMode(14, INPUT);
pinMode(15, INPUT);
}
void loop() {
byte entrada;
entrada = leeDipSwitch();
muestraDisplay(entrada);
switch(entrada){
case 0:
ciclo0();
break;
case 1:
ciclo1();
break;
1
case 2:
ciclo2();
break;
case 3:
ciclo3();
break;
}
}
byte leeDipSwitch()
{
byte valor, aux;
aux = digitalRead(14);
valor = digitalRead(15);
valor = valor << 1;
valor = valor | aux;
valor = valor & 0x03;
return valor;
}
void ciclo0()
{
digitalWrite(9, HIGH);
delay(500);
digitalWrite(9, LOW);
delay(500);
}
void ciclo1()
{
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(500);
}
void ciclo2()
{
digitalWrite(9, HIGH);
delay(1500);
digitalWrite(9, LOW);
delay(1500);
}
void ciclo3()
{
digitalWrite(9, HIGH);
delay(2000);
digitalWrite(9, LOW);
delay(2000);
}
2
2. El siguiente circuito implementa el control de un motor DC, según los siguientes ciclos de trabajo:
16 8 U1
2 3
ARD1 IN1 VSS VS OUT1
7 6
IN2 OUT2
1
EN1
1
2
9
ON
Reset BTN
EN2
DSW1 10 11
ON
IN3 OUT3
15 14
www.TheEngineeringProjects.com
AREF
L293D
13
4
3
PB5/SCK
12
RESET PB4/MISO
11
~PB3/MOSI/OC2A
10
VCC ~PB2/SS/OC1B
9
GND ~ PB1/OC1A 8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121
7
ANALOG IN
PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3
PC3/ADC3 ~ PD3/INT1 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARDUINO UNO
void setup() {
for(int i=2;i<=10;++i){
pinMode(i, OUTPUT);
}
pinMode(14, INPUT);
pinMode(15, INPUT);
}
void loop() {
byte entrada;
entrada = leeDipSwitch();
muestraDisplay(entrada);
switch(entrada){
case 0:
ciclo0();
break;
case 1:
ciclo1();
break;
case 2:
ciclo2();
break;
case 3:
ciclo3();
break;
}
}
3
byte leeDipSwitch()
{
byte valor, aux;
aux = digitalRead(14);
valor = digitalRead(15);
valor = valor << 1;
valor = valor | aux;
valor = valor & 0x03;
return valor;
}
void ciclo0()
{
digitalWrite(9, LOW);
digitalWrite(10, LOW);
}
void ciclo1()
{
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
}
void ciclo2()
{
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
delay(2000);
digitalWrite(9, LOW);
delay(2000);
}
void ciclo3()
{
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
delay(4000);
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
delay(4000);
}
3. El siguiente circuito implementa el control de un motor paso a paso monopolar, según los
siguientes ciclos de trabajo:
4
16 8 U1
2 3
ARD1 IN1 VSS VS OUT1
7 6
IN2 OUT2
1
EN1
1
2
9
ON
Reset BTN
EN2
DSW1 10 11
ON
IN3 OUT3
15 14
www.TheEngineeringProjects.com
AREF
L293D
13
4
3
PB5/SCK
12
RESET PB4/MISO
11
~PB3/MOSI/OC2A
10
VCC ~PB2/SS/OC1B
9
GND ~ PB1/OC1A 8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121
7
ANALOG IN
PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3
PC3/ADC3 ~ PD3/INT1 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARDUINO UNO
void setup() {
for(int i = 0; i <= 8; ++i){
pinMode(i, OUTPUT);
}
pinMode(14, INPUT);
pinMode(15, INPUT);
mpp.setSpeed(10);
}
void loop() {
byte entrada;
entrada = leeDipSwitch();
muestraDisplay(entrada);
switch(entrada){
case 0:
ciclo0();
break;
case 1:
ciclo1();
break;
case 2:
5
ciclo2();
break;
case 3:
ciclo3();
break;
}
}
byte leeDipSwitch()
{
byte valor, aux;
aux = digitalRead(14);
valor = digitalRead(15);
valor = valor << 1;
valor = valor | aux;
valor = valor & 0x03;
return valor;
}
void ciclo0()
{
return;
}
void ciclo1()
{
mpp.step(STEPS);
}
void ciclo2()
{
mpp.step(-STEPS);
}
void ciclo3()
{
mpp.step(3*STEPS);
mpp.step(-3*STEPS);
}
4. El siguiente circuito implementa el control de un motor paso a paso bipolar, según los siguientes
ciclos de trabajo:
6
16 8 U1
2 3
ARD1 IN1 VSS VS OUT1
7 6
IN2 OUT2
1
EN1
+88.8
1
2
9
ON
Reset BTN
EN2
DSW1 10 11
ON
IN3 OUT3
15 14
www.TheEngineeringProjects.com
AREF
L293D
13
4
3
PB5/SCK
12
RESET PB4/MISO
11
~PB3/MOSI/OC2A
10
VCC ~PB2/SS/OC1B
9
GND ~ PB1/OC1A 8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121
7
ANALOG IN
PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3
PC3/ADC3 ~ PD3/INT1 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARDUINO UNO