Introducción al IoT
¿Qué es el IoT? y El IoT de consumo personal
IoT en industria e infraestructura
Lo necesario para tu proyecto IoT
Materiales y herramientas necesarias
El impacto de mi proyecto IoT
Hardware a utilizar en proyectos de IoT
Conexión física de sensores
Tipos de sensores
Tipos de actuadores
Voltaje y corriente necesarios para el funcionamiento de un actuador
Tipos de controladores y sus características
Los super poderes de la Pi
Instalación del sistema operativo
Configuración inicial de la Pi, comandos útiles de la consola de Linux
Conecta tu Pi a internet
Conexión por SSH
Arduino o Raspberry Pi ¿Cuál escoger?
Tipos de comunicaciones básicas entre dispositivos
Proyecto del Curso
Contexto del problema ¿Cómo lo solucionamos?
Materiales que necesitas
Planeemos el circuito y conectemos sensores
Escribamos el código
Subir código y asegurar comunicaciones
Archivos para preparar Bot.py y Upgrade.sh
Trámite de ingreso a la API de Twitter y configuración de Tweetpy
¡Probemos!
Cierre
Conclusiones
Resuelve tus dudas sobre IoT en esta Expert Session
Glosario de términos del curso
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Comandos importantes:
chmod +x bot.py
./bot.py
Línea de código agregada al inicio del bot.py:
#!/usr/bin/env python3
Comandos importantes:
sudo crontab -e
Líneas de código agregadas al crontab:
SHELL = “/bin/bash”
53 22 * * * source /home/pi/.profile && /usr/bin/python3 /home/pi/bot.py
Aportes 16
Preguntas 0
Para mí que soy principiante pude ver cómo se entrelazan hardware (Raspberry Pi, Arduino, etc.) con software (Python, bash, etc) y la electrónica funcionando en todo su esplendor. Este curso ha sido revelador, si lo hubiera visto de joven seguramente hubiera estudiado ingeniería electrónica. Gracias Profe Karo, una de las mejores.
Excelente curso, muy interesante
Algo que se debe aclarar es que para que se puedan leer las variables de estado se debe reiniciar la raspberry después de introducir las en ./profile
al hacer ./bot.py para hacer el archivo ejecutable. raspberry me responde:
/usr/bin/env: <<python3\r>>:no existe el fichero o directorio
como puedo solucionarlo?
excelente clase
Bueno ahi esta mi aporte, desde hacer el codigo arduino, poner a funcionar la rpi4, el crontab todo, pedirle a twitter que me de una cuenta developer etc…
Tengo este error:
Traceback (most recent call last):
File “bot.py”, line 50, in <module>
api.update_status(‘Soy un bot creado por Franco \n La temperatura es: {0} \n La humedad es: {1} %% RH \n La concentracion es: {2} %% PPM \n {3}’ .format(avtemp, avhumi, avpoll, timegood))
File “/usr/local/lib/python2.7/dist-packages/tweepy/api.py”, line 193, in update_status
)(post_data=post_data, *args, **kwargs)
File “/usr/local/lib/python2.7/dist-packages/tweepy/binder.py”, line 250, in _call
return method.execute()
File “/usr/local/lib/python2.7/dist-packages/tweepy/binder.py”, line 191, in execute
six.reraise(TweepError, TweepError(‘Failed to send request: %s’ % e), sys.exc_info()[2])
File “/usr/local/lib/python2.7/dist-packages/tweepy/binder.py”, line 189, in execute
proxies=self.api.proxy)
File “/usr/lib/python2.7/dist-packages/requests/sessions.py”, line 519, in request
prep = self.prepare_request(req)
File “/usr/lib/python2.7/dist-packages/requests/sessions.py”, line 462, in prepare_request
hooks=merge_hooks(request.hooks, self.hooks),
File “/usr/lib/python2.7/dist-packages/requests/models.py”, line 317, in prepare
self.prepare_auth(auth, url)
File “/usr/lib/python2.7/dist-packages/requests/models.py”, line 548, in prepare_auth
r = auth(self)
File “/usr/lib/python2.7/dist-packages/requests_oauthlib/oauth1_auth.py”, line 88, in call
unicode(r.url), unicode(r.method), None, r.headers)
File “/usr/lib/python2.7/dist-packages/oauthlib/oauth1/rfc5849/init.py”, line 314, in sign
(‘oauth_signature’, self.get_oauth_signature(request)))
File “/usr/lib/python2.7/dist-packages/oauthlib/oauth1/rfc5849/init.py”, line 129, in get_oauth_signature
uri, headers, body = self._render(request)
File “/usr/lib/python2.7/dist-packages/oauthlib/oauth1/rfc5849/init.py”, line 211, in _render
request.oauth_params, request.headers, realm=realm)
File “/usr/lib/python2.7/dist-packages/oauthlib/oauth1/rfc5849/utils.py”, line 32, in wrapper
return target(params, *args, **kwargs)
File “/usr/lib/python2.7/dist-packages/oauthlib/oauth1/rfc5849/parameters.py”, line 59, in prepare_headers
escaped_value = utils.escape(value)
File “/usr/lib/python2.7/dist-packages/oauthlib/oauth1/rfc5849/utils.py”, line 57, in escape
’Got %r of type %s.’ % (u, type(u)))
tweepy.error.TweepError: Failed to send request: Only unicode objects are escapable. Got None of type <type ‘NoneType’>.
Me sale este error
Traceback (most recent call last):
File “bot.py”, line 4, in <module>
import tweepy
ModuleNotFoundError: No module named ‘tweepy’
Amigos quiero pedirles el favor quien me puede ayudar con aclaracion de python time.time() que necesito hacer voy hacer un problama que va a tener una camara mostrando video y que cuando vea un rostro prenda un led lo deje prendio por 3 segunods y se apague pero la camara no se puede deterner!! no podria utilizar time.sleep() les agradesco su ayuda!!
Puedes usar:
cp ./Code/bot.py .
Para copiar desde la consola
digitales:
http://(ip)/digital/(pin)/(0 o 1)
#ejemplo:
http//(ip)/digital/7/1 # esto encenderá el pin 7
analógicos:
http://(ip)/analog/(pin)/(valor analógico)
#ejemplo:
http//(ip)/analog/7/250 # esto enviara un valor analógico de 250 al pin 7
se puede manejar igual con requests.get
usando estas direcciones
El curso esta excelente
Excelente Ejemplo, muchas gracias Karolina!!
increible todo lo que se ha visto, pero tengo dudas muy grandes en algunos puntos, como la ejecucion de crontab para el uso recurrente (ya realice el examen pense que era esta la opcion, pero no viene asi que estoy confundido) y ademas no me queda claro el uso de SHELL supongo que requiere investigacion por fuera lo cual es algo confuso. Tendre que esperar a tener mi PI.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.