Distribuidores autorizados en línea:

Comprar en USA Comprar en UK Comprar en DE Comprar en IT Comprar en FR Comprar en ES ここでご購入を!

En esta lección, aprenderás cómo leer datos analógicos desde un pin ADC y cómo utilizar PWM para generar una señal analógica de salida a un dispositivo externo.

ADC es la abreviatura de Convertidor Analógico-Digital. Una señal digital solo tiene dos estados, 1/0 o alto/bajo voltaje. Una señal analógica es cualquier señal continua para la cual la característica de variación en el tiempo de la señal representa alguna otra cantidad que también varía en el tiempo.

En esta lección, utilizaremos una fotoresistencia como fuente de datos analógicos conectada al pin ADC2 (GP28).

PWM es la abreviatura de Modulación por Ancho de Pulso. Un pin PWM puede permitir que el Pico exporte corriente analógica a actuadores como LED, servo, motores DC.

En esta lección, utilizaremos un LED como dispositivo analógico y generaremos una señal PWM hacia este dispositivo a través del pin GP15. Puedes encontrar la ubicación de los pines GP15 y GP28 en la siguiente imagen (1.1).

En este proyecto, simularemos un sistema de iluminación automático: cuando el sensor detecte que el entorno natural está oscuro, aumentaremos la potencia de la luz artificial (LED), y cuando el entorno natural esté brillante, reduciremos la luz del LED.

imagen (1.1)

  1. Tarjeta Raspberry Pi Pico y cable microUSB
  2. Una computadora para ejecutar el IDE de Python Thonny
  3. Una protoboard
  4. LED x 1 pc
  5. Resistencia de 220 Ω x 1 pc
  6. Resistencia de 10 kΩ x 1 pc
  7. Fotoresistencia x 1 pc
  8. Algunos cables de puente

En el diagrama del circuito anterior, puedes ver que:

El pin negativo del LED está conectado a GND

El pin positivo del LED está conectado a GP15 a través de una resistencia de 220 Ω

El pin 1 de la fotoresistencia está conectado a 3.3V a través de una resistencia de 10 kΩ

El pin 2 de la fotoresistencia está conectado a GP28

Puedes descargar el código Python para la Lección 3 de http://osoyoo.com/driver/pico/lesson3/pico-lesson3.py. Luego, puedes utilizar Thonny para abrir pico-lesson4.py y cargarlo en el Pico.

Aquí está el código completo con comentarios:

from machine import Pin, PWM, ADC #import Pin, PWM, ADC handling library

pwm = PWM(Pin(15)) #tell Pico GP15 is a PWM output   pin
adc = ADC(Pin(28)) #tell Pico GP28 is a ADC analog input pin

pwm.freq(1000) #set PWM frequency at 1000 hz

while True:
	duty = adc.read_u16() #read  Light intensity
	pwm.duty_u16(60000-duty) #provide current to LED, the more light intensity, the less current to LED

Paso 1: Conecte la placa Pico a uno de los puertos USB de su PC.

Paso 2: Si no ha instalado el software Thonny o no sabe cómo usar el IDE de Thonny, consulte la Lección 1.

Paso 3: Abra el IDE de Python Thonny y haga clic en ‘Run’ para seleccionar ‘MicroPython para Raspberry Pi Pico’ como intérprete:

También seleccione el puerto COM al que está conectada su placa Pico:

Luego, haga clic en OK para guardar la configuración.

Paso 4: Ahora copie el código Python en la ventana de Thonny como se muestra a continuación:

Paso 5: Haga clic en el pequeño botón ►, aparecerá la ventana de guardar como se muestra en la siguiente foto; seleccione Raspberry Pi Pico como destino.

Paso 6: Nombre el archivo como pico-lesson3.py y luego haga clic en OK.

Paso 7: Haga clic en el pequeño botón ► nuevamente para ejecutar el código Python.

Ahora puede probar colocando una luz brillante sobre la fotoresistencia; verá que el LED se vuelve muy tenue. Si sombrea la luz de la fotoresistencia con la mano, entonces el LED se volverá más brillante.

Después de terminar, presione Ctrl+C para finalizar el comando.

APRENDE MÁS SOBRE LAS PIEZAS SKU:2021005900

No. Fotografía Nombre del producto Enlace
1 Placa Raspberry Pi Pico https://osoyoo.store/products/raspberry-pi-pico-flexible-microcontroller-board-based-on-the-raspberry-pi-rp2040-dual-core-arm-cortex-m0-processor-1-pc?variant=39875307864175
2 Servomotor https://osoyoo.store/products/micro-servo-sg90-blue-for-arduino-v2-0-robot-carmodel-lacc200610?variant=31648847560815
3 Módulo sensor de infrarrojos https://osoyoo.store/products/hc-sr501-pir-motion-sensor-for-arduino?variant=31957812838511
4 Módulo y tarjeta RFID https://osoyoo.store/products/osoyoo-rfid-module?variant=31970646130799
5 Pulsadores y sombreros https://osoyoo.store/products/push-button-and-hats-5pcs?variant=39879253131375
6 LED (6 blancos, 6 rojos, 6 amarillos, 6 verdes) https://osoyoo.store/products/led-packs-for-arduino?variant=31957816442991
7 Módulo zumbador piezoeléctrico https://osoyoo.store/products/piezo-buzzer-module-1pcs?variant=39879251656815
8 Pantalla LCD I2C (16×2) https://osoyoo.store/products/i2c-lcd1602-display?variant=39875437101167
9 Destornillador Philips https://osoyoo.store/products/phillips-screwdriver?variant=31930635780207https://osoyoo.store/products/single-channel-relay-module-for-arduino-raspberry-pi?variant=31955954401391
10 Protoboard sin soldadura para prototipos https://osoyoo.store/products/solderless-prototype-breadboard-1pcs?variant=39879255457903
11 Potenciómetro (resistencia ajustable de 10K) https://osoyoo.store/products/potentionmeter-10k-adjustable-resistor-3pcs?variant=39879281016943
12 40Pin M to M Jumper Wires https://osoyoo.store/products/40pin-m-to-m-jumper-wires?variant=39879256539247
13 20Pin M to F Jumper wires 15cm https://osoyoo.store/products/20pin-15cm-female-to-female-cable?variant=31930663305327