servo control using analog signal obtain “analog” input using analogread()

9
vo Control Using Analog Si 5V 0 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 GND 5V 0 23 29 31 33 35 37 39 41 43 45 47 49 51 53 PW M /DIGITAL CO M M UNICATIO N POW ER AN ALO G IN DIG ITAL A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 14 15 16 17 18 19 20 21 TX3 RX3 TX2 RX2 TX1 RX1 SCA SCL 77 7 76 6 75 5 74 4 74 3 72 2 71 TX0 70 RX0 RST 3V3 5V0 GND GND VIN 27 GND 25 SERVO 85 ARE 84 GND 83 13 82 12 81 11 80 10 79 9 78 8 GROUND POW ER SIG N AL PO TEN TIO M ETER (variable resistor) WIPER Obtain “analog” input using analogRead().

Upload: laurel-ryan

Post on 22-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Servo Control Using Analog Signal

5V0

22242628303234363840424446485052GND

5V0

23

29313335373941434547495153

PWM/DIGITALCOMMUNICATION

POWER ANALOG IN

DIGITAL

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

14 15 16 17 18 19 20 21

TX3

RX3

TX2

RX2

TX1

RX1

SCA

SCL

777

766

755

744

743

722

71TX0

70RX0

RST

3V3

5V0

GND

GND

VIN

27

GND

25

SERVO

85ARE

84GND

8313

8212

8111

8010

799

788

GROUND POWER

SIGNAL

POTENTIOMETER(variable resistor)

WIPER

Obtain “analog” inputusing analogRead().

Page 2: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Conversion of Analog to Digital

• Obtain “analog” input using analogRead().

• analogRead() returns a value between 0 (if pin at ground) and 1023 (if pin at 3.3 V).

• Argument of analogRead() is the pin to read(only pins labeled ANALOG IN can be used).

Page 3: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Pulse Width Modulation (PWM)

1Period 1Period1Period

90%DutyCycle 90%DutyCycle90%DutyCycle

Time

Voltage

1Period 1Period1Period

50%DutyCycle 50%DutyCycle50%DutyCycle

Time

Page 4: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

1Period 1Period1Period

20%DutyCycle 20%DutyCycle20%DutyCycle

Time

Pulse Width Modulation (PWM)

1Period 1Period1PeriodTime

Voltage

DutyCycle=?100%

Page 5: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Pulse Width Modulation (PWM)

1Period 1Period1PeriodTime

Voltage

DutyCycle=?0%

• On the chipKIT there are 490 periods per second.• Use analogWrite(pin, value) to control

the duty cycle on a pin.• The value must be between 0 and 255.• The pin must be one of the underlined pins.

Page 6: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Pulse Width Modulation (PWM)• If you take the average value over one period,

you can think of the voltage as being between0 V (0% duty cycle) and 3.3 V (100% duty cycle).

• There are 256 different voltage levels.

• Can demonstrate this with an LED attached topin 9 and the example sketch Fading.

Page 7: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Pulse Width Modulation (PWM)

5V0

22242628303234363840424446485052GND

5V0

23

29313335373941434547495153

PWM/DIGITALCOMMUNICATION

POWER ANALOG IN

DIGITAL

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

14 15 16 17 18 19 20 21

TX3

RX3

TX2

RX2

TX1

RX1

SCA

SCL

777

766

755

744

743

722

71TX0

70RX0

RST

3V3

5V0

GND

GND

VIN

27

GND

2585

ARE

84GND

8313

8212

8111

8010

799

788

Upload example sketch Fading for this circuit.

Page 8: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

5V0

22242628303234363840424446485052GND

5V0

23

29313335373941434547495153

PWM/DIGITALCOMMUNICATION

POWER ANALOG IN

DIGITAL

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

14 15 16 17 18 19 20 21

TX3

RX3

TX2

RX2

TX1

RX1

SCA

SCL

777

766

755

744

743

722

71TX0

70RX0

RST

3V3

5V0

GND

GND

VIN

27

GND

25

85ARE

84GND

8313

8212

8111

8010

799

788

POTENTIOMETER

WIPER

Pulse Width Modulation (PWM)

Write sketch led_with_potentiometer for this circuit.

Page 9: Servo Control Using Analog Signal Obtain “analog” input using analogRead()

Pulse Width Modulation (PWM)

5V0

22242628303234363840424446485052GND

5V0

23

29313335373941434547495153

PWM/DIGITALCOMMUNICATION

POWER ANALOG IN

DIGITAL

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

14 15 16 17 18 19 20 21

TX3

RX3

TX2

RX2

TX1

RX1

SCA

SCL

777

766

755

744

743

722

71TX0

70RX0

RST

3V3

5V0

GND

GND

VIN

27

GND

25

85ARE

84GND

8313

8212

8111

8010

799

788

INCREASE

DECREASE

Write sketch led_with_inc_and_dec for this circuit.