0% encontró este documento útil (0 votos)
33 vistas6 páginas

Fundamentos de PROGRAMACION en Python

Este documento presenta los fundamentos de la programación en Python. Explica conceptos como estructuras de datos, vectores, matrices y su representación mediante pseudocódigo y diagramas de flujo. Luego describe ejemplos prácticos como controlar un servomotor y mostrar datos en una pantalla OLED usando una Raspberry Pi. Concluye que estas estructuras y técnicas son fundamentales para construir programas efectivos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
33 vistas6 páginas

Fundamentos de PROGRAMACION en Python

Este documento presenta los fundamentos de la programación en Python. Explica conceptos como estructuras de datos, vectores, matrices y su representación mediante pseudocódigo y diagramas de flujo. Luego describe ejemplos prácticos como controlar un servomotor y mostrar datos en una pantalla OLED usando una Raspberry Pi. Concluye que estas estructuras y técnicas son fundamentales para construir programas efectivos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

INGENIERÍA EN METAL MECÁNICA

ASIGNATURA: Instrumentación y Control

ACTIVIDAD: Fundamentos de PROGRAMACION en Python

DOCENTE: Ing. CESAR CHÁVEZ OLIVARES

Integrantes del equipo:

A. Paterno A. Materno Nombre

Hernández Sanches Damián Jasiel


Zavaleta Agustín Rodolfo
Gamez Hernández Daniel

CUATRIMESTRE: 10° Décimo GRUPO: “A”

HUEJUTLA DE REYES, HIDALGO; 09 DE OCTUBRE DEL 2023.


Introducción

Las estructuras de programación y las estructuras de datos son elementos fundamentales en el campo de

la programación y la informática. Proporcionan la base sobre la cual se construyen algoritmos y sistemas de

software. En este contexto, se pueden identificar cinco categorías clave de estructuras: Estructuras Básicas,

Estructuras Selectivas, Estructuras Repetitivas, Vectores, Matrices y sus representaciones visuales mediante

pseudocódigos y diagramas de flujo.

En conjunto, estas estructuras son fundamentales para la construcción de programas y sistemas de

software efectivos y eficientes. Los pseudocódigos y diagramas de flujo son herramientas valiosas para

representar visualmente cómo estas estructuras interactúan y se utilizan en la programación y la manipulación

de datos. Cada una de estas estructuras tiene su lugar y aplicación en una variedad de problemas y proyectos de

programación.
Desarrollo

Sensor de luminosidad con Fotorresistencia – LDR

# Sensor de luminosidad con Fotoresistencia - LDR

# Sale del A0(analog output) del sensor al 34 del esp32. También tiene elD0(digital output)
del
# sensor(aporta 1 o 0), pero no lo uso.
# The ADC class to read analog value, and the PWM class to generate PWMsignals.

'''
The voltage on the AO pin depends on the illumination - that is the amountof light that
falls on the sensor. You can read this voltage by connecting the AO pin ofthe
photoresistor sensor to an analog input pin and then using the analogRead()function.
'''
from machine import Pin,ADCimport utime

sensor=ADC(Pin(34)) [Link](ADC.ATTN_11DB)#
atenuación
[Link](ADC.WIDTH_12BIT) #resolución, o sea , regular la precisión dela lectura
# Si es 12 bits su valores son de 0 a 4095, si es bits 11 es desde 0 a 2046
led=Pin(2,[Link])
while True:
medicion=int([Link]()) # entre 0 y 4095
print("Medición: ", medicion) [Link](0.5)
if medicion >= 1000:[Link](1)

else:
[Link](0)
Programado en un ESP32 en Python mapeando un servomotorSG90 función map

# Importamos los módulos from machine


import Pin, PWM
from utime import sleep, sleep_ms#Creando el objeto

servo = PWM(Pin(21), freq = 50) # equivale a 20 ms

#funcion
#

def map_s(x):
#return int (( x - 0) * (8200 - 1800) / (180 - 0) + 1800) # duty_u16 --
0 y 65536
#return int (( x - 0) * (125 - 25) / (180 - 0 ) + 25 ) # duty(m) --0y1023
return int (( x - 0) * (2400000 - 500000) / (180 - 0) + 500000) #
duty_ns() - 0 y 1000000000
angulos = [0, 45, 90, 125, 180, 125, 90, 45, 0]
while True:
# 16 bits 65536 (1800 - 8200)
for i in angulos:m =map_s (i)
servo.duty_ns (m)
sleep_ms(500)
Programando la OLED SSD1306 y mostrando datos basicos. 128 x64

from machine import Pin, I2C


from ssd1306 import SSD1306_I2C
import time
import framebuf

ancho = 128
alto = 64

i12c = I2C (0, scl-Pin(22), sda-Pin(21))


oled = SSD1306_I2C(ancho, alto, i2c)

print([Link]())
def buscar_ icono (ruta): dibujo = open (ruta, "rb") # Abrir en modo lectura
de bits [Link]
[Link]() # metodo para ubicarse en la primera linea de los bist
xy = [Link]() # ubicarnos en la segunda línea
x = int([Link]()[0]) # split devuelve una lista de los elementos de la
variable solo 2 elemeto
y = int([Link]()[1])
icono = bytearray([Link]()) # guardar en matriz de bites
[Link]()
return framebuf. FrameBuffer(icono, x, y, framebuf .MONO_HLSB) #Utilizamos
el metodo MONO HLSB
[Link] (buscar_icono("[Link]"), 0, 0) # ruta y sitio de ubicación del
directorio
oled. show ()
[Link](3)
oled.fil1(0)
oled. show()
[Link] (2)

led. fill(1)oled.
show()[Link](3)
Conclusión

En conclusión, las estructuras básicas, selectivas, repetitivas, así como los conceptos de vectores y

matrices, junto con sus representaciones mediante pseudocódigos y diagramas de flujo, desempeñan un papel

fundamental en la programación y resolución de problemas en la informática.

En conjunto, estas estructuras y técnicas son fundamentales para la construcción de programas efectivos

y eficientes. Proporcionan las herramientas necesarias para abordar una amplia gama de problemas en la

programación y la ingeniería de software. Una comprensión sólida de estos conceptos es esencial para cualquier

programador y les permite crear soluciones robustas y funcionales.

También podría gustarte