0% encontró este documento útil (0 votos)
1K vistas71 páginas

Introduccion A La Iot Capitulo Ii

Este documento discute conceptos básicos de programación como diagramas de flujo, variables, estructuras lógicas como IF-THEN y bucles, y herramientas de programación visual como Blockly. Explica cómo los diagramas de flujo ilustran procesos, y cómo variables, estructuras lógicas e IF-THEN y bucles permiten a los programadores dar instrucciones a las computadoras. También describe Blockly como una herramienta que permite a los principiantes crear programas usando bloques sin necesidad de código.
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 PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
1K vistas71 páginas

Introduccion A La Iot Capitulo Ii

Este documento discute conceptos básicos de programación como diagramas de flujo, variables, estructuras lógicas como IF-THEN y bucles, y herramientas de programación visual como Blockly. Explica cómo los diagramas de flujo ilustran procesos, y cómo variables, estructuras lógicas e IF-THEN y bucles permiten a los programadores dar instrucciones a las computadoras. También describe Blockly como una herramienta que permite a los principiantes crear programas usando bloques sin necesidad de código.
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 PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 71

CIBERSEGURIDAD

ÍNDICE

1. INTRODUCCIÓN

1.1 CONCEPTOS DE PROGRAMACIÓN BÁSICA

2. APLIQUE PROGRAMACIÓN BÁSICA PARA SOPORTE DE DISPOSITIVOS IOT

2.1 CONCEPTOS DE PROGRAMACIÓN BÁSICA

2.2 PROGRAMACIÓN BÁSICA CON BOCKLY

2.3 PROGRAMACIÓN BÁSICA CON PYTHON

3. PROTOTIPO DE LA IDEA
CAPÍTULO 2: TODO SE VUELVE PROGRAMABLE
2.1 APLIQUE LA PROGRAMACIÓN BÁSICA
PARA EL SOPORTE DE DISPOSITIVOS
DIAGRAMAS DE FLUJO
Los diagramas de flujo se utilizan
en diferentes industrias, entre ellas
ingeniería, ciencias físicas y
programación de computadoras, en
los cuales se requiere una
comprensión completa de los
procesos o flujos de trabajo. Los
diagramas de flujo son diagramas
que se utilizan para representar
estos procesos o flujos de trabajo.
Los diagramas de flujo ilustran
cómo debe funcionar un proceso.
Los diagramas de flujo no
requieren terminología ni símbolos
complejos y específicos de la
industria. Un diagrama de flujo
debe ser fácil de entender sin tener
que ser un experto en el campo
elegido.
DIAGRAMAS DE FLUJO

Los diagramas de flujo deben mostrar los


estados de entrada, las decisiones tomadas
y los resultados de dichas decisiones. Es
importante mostrar los pasos que se deben
seguir cuando el resultado de una decisión
es sí o no.
Es común que los programadores creen el
primer borrador de un programa sin
ningún lenguaje de programación
específico. Estos programas
independientes del lenguaje se centran en
la lógica en lugar de la sintaxis y se
conocen como algoritmos. Un diagrama
de flujo es una manera común de
representar un algoritmo. En la figura, se
muestra un ejemplo de diagrama de flujo.
SOFTWARE DEL SISTEMA, SOFTWARE
DE APLICACIÓN Y LENGUAJES
INFORMÁTICOS

Existen dos tipos comunes


de software informático:
software del sistema y
software de aplicaciones.
Los programas para
software de aplicaciones se
crean con el fin de realizar
una tarea determinada o un
conjunto de tareas. Por
ejemplo, Cisco Packet
Tracer es un programa de
simulación de red que
permite que los usuarios
modelen redes complejas y
formulen preguntas
hipotéticas sobre el
comportamiento de la red.
SOFTWARE DEL SISTEMA, SOFTWARE
DE APLICACIÓN Y LENGUAJES
INFORMÁTICOS

El software del sistema funciona entre el


hardware de la computadora y el programa de
aplicaciones. Es el software del sistema que
controla el hardware de la computadora y
permite que los programas de las aplicaciones
funcionen. Entre los ejemplos comunes de
software del sistema se incluyen Linux, Apple
OSX, y Microsoft Windows.
El software del sistema y el software de
aplicaciones se crean con un lenguaje de
programación. Un lenguaje de programación es
un lenguaje formal diseñado para crear
programas que comunican instrucciones al
hardware de la computadora. Estos programas
implementan algoritmos que son conjuntos
autónomos y pormenorizados de las
operaciones que se deben realizar.
SOFTWARE DEL SISTEMA, SOFTWARE
DE APLICACIÓN Y LENGUAJES
INFORMÁTICOS
El software del sistema funciona entre el
hardware de la computadora y el programa de
aplicaciones. Es el software del sistema que
controla el hardware de la computadora y
permite que los programas de las aplicaciones
funcionen. Entre los ejemplos comunes de
software del sistema se incluyen Linux, Apple
OSX, y Microsoft Windows.
El software del sistema y el software de
aplicaciones se crean con un lenguaje de
programación. Un lenguaje de programación es
un lenguaje formal diseñado para crear
programas que comunican instrucciones al
hardware de la computadora. Estos programas
implementan algoritmos que son conjuntos
autónomos y pormenorizados de las
operaciones que se deben realizar.
VARIABLES DE PROGRAMACIÓN

Los lenguajes de programación utilizan


variables como depósitos dinámicos para
alojar frases, números u otra información
importante que pueda utilizarse en la
codificación. En lugar de repetir valores
específicos en varios lugares en todo el
código, se puede utilizar una variable. Las
variables pueden contener el resultado de
un cálculo, el resultado de una consulta en
una base de datos o algún otro valor. Esto
significa que el mismo código funcionará
con diferentes porciones de datos sin que
se deban reescribir.
Por ejemplo "x + y = z" es un ejemplo de
una expresión de programación. En esta
expresión, "x", "y" y "z" son las variables
que pueden representar caracteres, cadenas
de caracteres, valores numéricos o
direcciones de memorias
VARIABLES DE PROGRAMACIÓN

Una variable puede referirse a un valor. Por ejemplo, la


expresión "a = 10" asocia el valor de 10 con la variable
a.
Una variable también puede representar una ubicación
de memoria. La expresión "a = 10" representa que el
valor de 10 se almacena en algún lugar de la memoria
de la computadora, que se denomina "a".
Las variables se pueden clasificar en dos categorías:
•Variables locales: estas son variables que se
encuentran dentro del alcance de un
programa/función/procedimiento.
•Variables globales: estas son variables que se
encuentran dentro del alcance en el tiempo de
ejecución del programa. Cualquier parte del programa
puede recuperarlas.
Las variables permiten que los programadores creen
rápidamente una amplia variedad de programas simples
o complejos que le indiquen a la computadora que se
comporte de manera predefinida.
ESTRUCTURAS BÁSICAS DE
PROGRAMAS
Las personas imparten la lógica a las computadoras a través de programas. Mediante estructuras lógicas
específicas, un programador puede preparar una computadora para tomar decisiones. Las estructuras
lógicas más comunes son las siguientes

•IF – THEN: esta estructura lógica permite que la computadora tome una decisión según el resultado de
una expresión. Un ejemplo de expresión es myVar > 0. Esta expresión es verdadera si el valor almacenado
en la variable myVar es mayor que cero. Cuando se encuentra una estructura IF-THEN, evalúa la
expresión proporcionada. Si la expresión es falsa, la computadora continúa con la siguiente estructura,
ignorando el contenido del bloque IF - THEN. Si la expresión es verdadera, la computadora ejecuta la
acción asociada antes de pasar a la siguiente instrucción del programa. (Figura 1).
ESTRUCTURAS BÁSICAS DE
PROGRAMAS

•Bucles FOR: se utilizan para ejecutar un conjunto específico de instrucciones una cantidad de veces
específica según una expresión. El término bucle proviene del hecho de que el conjunto de instrucciones
se ejecuta varias veces. Si bien la sintaxis del bucle FOR varía de un lenguaje al otro, el concepto sigue
siendo igual. Una variable actúa como un contador dentro de un rango de valores que se identifica con
un valor mínimo y un valor máximo. Cada vez que se ejecuta el bucle, aumenta la variable del contador.
Cuando el contador es igual al valor máximo definido, se abandona el bucle y la ejecución avanza a la
siguiente instrucción. (Figura 2).
ESTRUCTURAS BÁSICAS DE
PROGRAMAS

•Bucles WHILE: se utilizan para ejecutar un conjunto específico de instrucciones


mientras que una expresión sea verdadera. Observe que a menudo las instrucciones
dentro del bucle eventualmente harán que la expresión se evalúe como falsa. (Figura 3).
ACTIVIDAD 1: CONCEPTOS DE
LENGUAJE DE PROGRAMACION
ACTIVIDAD 1: IDENTIFIQUE LOS
TÉRMINOS DE PROGRAMACIÓN
PRÁCTICA DE LABORATORIO: CREE UN
DIAGRAMA DE FLUJO DE UN PROCESO

Los diagramas de flujo normalmente se usan para ilustrar de manera diagramática el flujo
del proceso antes de que se cree un programa de computadora. En esta práctica de
laboratorio, creará un diagrama de flujo simple que muestre el proceso que se utiliza para
encontrar un valor entero determinado.
Práctica de laboratorio: creación de un diagrama de flujo de un proceso
EVALUACIÓN: RELACIONE EL SÍMBOLO
DEL DIAGRAMA
¿QUÉ ES BLOCKLY?

Blockly es una herramienta de


programación visual creada para ayudar a
los principiantes a comprender los
conceptos de programación. Mediante el
uso de múltiples tipos de bloques, Blockly
permite que un usuario cree un programa
sin introducir ninguna línea de código. Esto
se muestra en la Figura 1.
Blockly implementa la programación visual
mediante la asignación de diferentes
estructuras de programas a bloques de
color. Los bloques también contienen
casillas y espacios que permiten que los
programadores ingresen los valores
requeridos por la estructura. Los
programadores pueden unir las estructuras
de programación arrastrando y asociando Crear una nueva variable en Blockly es sencillo: se
los bloques adecuados. Las estructuras de debe llevar el bloque variable hasta el espacio de
programación, como condicionales, bucles trabajo y completar el valor de la casilla. También se
y variables, están todas disponibles para puede cambiar el contenido de una variable mientras
utilizar. se ejecuta el programa.
¿QUÉ ES BLOCKLY?

La figura 2 muestra una variable de


Blockly.
Blockly también admite funciones. Al
igual que las variables, Blockly tiene
bloques específicos para representar
funciones. Asimismo, los programadores
simplemente seleccionan y arrastran los
bloques de funciones hasta el área del
espacio de trabajo y completan las
casillas requeridas.
Observe en las figuras 1 y 2 que el
bloque de variables y el bloque de
impresión en pantalla tienen una pestaña
biselada en la parte inferior y una ranura
en la parte superior. Esto significa que
los dos bloques pueden conectarse para
crear una secuencia de programa.
Blockly ejecutará primero el bloque de la
parte superior y luego, pasará al bloque
debajo de este.
¿QUÉ ES BLOCKLY?

Se encuentran disponibles otros bloques, como el bloque IF-THEN, el bloque WHILE y


el bloque FOR. También hay bloques específicos para los sensores y los actuadores.
Blockly se puede utilizar para traducir el código basado en bloques a Python o
JavaScript. Esto es muy útil para los programadores principiantes.
JUEGOS DE BLOCKLY

Google proporciona
una serie de juegos
educativos gratuitos y
de código abierto que
pueden ayudarlo a
aprender a programar.
La serie se denomina
Juegos de Blockly.
Para obtener más
información sobre los
Juegos de Blockly o
probarlos usted mismo,
haga clic aquí.

Para poder comenzar, hay varios niveles que debe completar. Blockly puede parecer un
juego, pero es una excelente herramienta que le permite aumentar sus capacidades de
pensamiento lógico, los cuales son uno de los componentes básicos de la programación
informática.
PACKET TRACER: ACTIVACIÓN DE UN
LED CON BLOCKLY

Cisco Packet Tracer se ha incorporado en Blockly como uno de los lenguajes de programación
disponibles en su funcionalidad de IoT. En esta práctica de laboratorio, controlará la velocidad
de activación del LED con el código de Blockly.
Packet Tracer: activación de un LED con Blockly
¿QUÉ ES PYTHON?

Python es un lenguaje muy común


diseñado para ser fácil de leer y
escribir. La comunidad de
desarrolladores de Python agrega
valor al lenguaje creando todo tipo
de módulos y poniéndolos a
disposición de otros programadores.
La filosofía base del lenguaje se
resume en el documento 
Zen de Python:
•Hermoso es mejor que feo.
•Explícito es mejor que implícito.
•Simple es mejor que complejo.
•Complejo es mejor que
complicado.
•La legibilidad es importante
¿QUÉ ES PYTHON?

A pesar del hecho de que Python está


diseñado para ser simple, aún hay una
curva de aprendizaje. Para que sea
más fácil aprender Python, un
principiante puede utilizar Blockly
para mejorar la comprensión de
Python.
Si bien los distintos lenguajes de
programación tienen diferente
semántica y sintaxis, todos comparten
la misma lógica de programación. Los
principiantes pueden utilizar Blockly
para crear fácilmente un programa
independiente del lenguaje, exportarlo
como código de Python y usar el
código recientemente creado para Las Figuras 1 y 2 muestran el programa del
aprender la sintaxis, la estructura y la Juego de Adivinanzas en formatos de Blockly y
semántica de Python. Python.
INTERPRETE DE PYTHON

Python es un lenguaje interpretado; por lo


tanto, requiere un intérprete para analizar
y ejecutar el código de Python. El
intérprete de Python comprende y ejecuta
el código de Python. El código de Python
pueden crearse en cualquier editor de
texto y los intérpretes de Python están
disponibles para muchos sistemas
operativos. Los desarrolladores de Python
pueden crear e implementar los
programas de Python prácticamente en
cualquier sistema operativo. Las
herramientas de terceros,
como Py2exe y Pyinstaller, también
pueden utilizarse para incluir el código
fuente de Python en un archivo
ejecutable, lo que elimina la necesidad de
intérpretes de Python al ejecutar el código
de Python.
INTERPRETE DE PYTHON

En las máquinas Linux, el intérprete de Python está instalado generalmente


en /usr/bin/python o /usr/bin/python3 (según las versiones de Python disponibles en el
sistema). Con el nuevo instalador Windows de Python, Python se instala de manera
predeterminada en el directorio de inicio del usuario. En equipos Windows más antiguos,
Python se colocaba en C:\PythonXX (donde XX es la versión de Python). Una vez
instalado el intérprete de Python, funciona de manera similar al shell de Linux. Esto
significa que, cuando se invoca sin argumentos, lee y ejecuta comandos interactivamente.
Cuando se invoca con un argumento de nombre de archivo o con un archivo como entrada
estándar, lee y ejecuta un script de ese archivo.
INTERPRETE DE PYTHON

Para iniciar el intérprete, simplemente


escriba python o python3 en el indicador del
shell.
Algunos sistemas heredados todavía se están
ejecutando en una versión anterior de Python 2,
pero muchos sistemas nuevos están migrando a
la nueva versión 3 de Python. La versión de
Python está impresa en la primera línea cuando
se inicia el intérprete (figura 1). Este curso se
basa en el código de Python 3.
Cuando se llama al intérprete de Python sin
argumentos y los comandos se ingresan
mediante el teclado, el intérprete se dice que
está en modo interactivo. En este modo, el
intérprete espera los comandos. El indicador
principal está representado por tres signos
mayor que (>>>). Las líneas de continuación
están representadas por tres puntos (...). La
línea de seguimiento es el indicador secundario
predeterminado.
INTERPRETE DE PYTHON

El indicador >>> indica que el intérprete está listo y espera los comandos.


Las líneas de seguimientos son necesarias al introducir un código multilínea. La Figura 2
muestra el bloque IF - THEN escrito en Python.
Otra forma de utilizar el intérprete es python -c command [arg]... que ejecuta las
declaraciones en el comando. Como las declaraciones de Python suelen contener espacios
u otros caracteres determinados del shell, se recomienda incluir el comando completo
entre comillas simples.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

El intérprete recibe y ejecuta las declaraciones interactivamente.


El intérprete actúa como calculadora simple. Puede ingresar una expresión y escribirá el
valor. La sintaxis de la expresión es directa. Los operadores +, -, * y / funcionan al igual
que en la mayoría de los otros lenguajes (por ejemplo, Pascal o C). Los paréntesis (())
pueden utilizarse para agrupar, como se muestra en la Figura 1.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

El modo interactivo de Python implementa la variable especial “_” para sostener el resultado
de la última expresión publicada, como se muestra en la Figura 2.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

Las variables son áreas de memoria rotuladas que se utilizan para almacenar datos de
programas de tiempo de ejecución. Para asignar valores a las variables en Python, use el
signo igual a (=). No se muestra ningún resultado antes del siguiente indicador interactivo,
como se muestra en la Figura 3
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

Los intentos de utilizar una variable no definida (sin ningún valor asignado) resultarán en un
error, como se muestra en la Figura 4.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON
Las secuencias, definidas como
secuencias de caracteres, también
pueden manejarse desde el modo
interactivo. Utilice el carácter de barra
invertida (\) para sustraerse de los
caracteres. Por ejemplo, una cadena que
utiliza comillas dobles, pero que
también necesita utilizar una comilla
doble dentro de la cadena. Si la cadena
se ingresa de la siguiente manera: "I
really "need" this"., Python se
confundirá y pensará que la primera
comilla doble dentro de la cadena
finaliza realmente la cadena. Si coloca
una barra invertida (\) antes de las
comillas dobles dentro de la cadena de
la siguiente manera: "I really \"need\"
this", la barra invertida (\) hará que
Python se sustraiga o ignore el carácter
que sigue.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

Las comillas simples o comillas dobles pueden utilizarse para envolver las cadenas,
como se muestra en la Figura 5.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

La declaración de publicación imprime el resultado de la expresión dada. Difiere de la


escritura simple de la expresión que se desea escribir (como hicimos anteriormente en los
ejemplos de cálculo) en la manera en que maneja múltiples expresiones y cadenas. Las
cadenas se publican sin comillas y se inserta un espacio entre los elementos para formatear
las cosas correctamente, como se muestra en la Figura 6.
VARIABLES Y DECLARACIONES
BÁSICAS DE PYTHON

Las funciones son una parte importante de muchos lenguajes de programación. Las funciones
permiten que un bloque de códigos reciba un nombre y se vuelva a utilizar según sea
necesario. La figura 7 define una función para agregar dos números y mostrar el resultado.
ESTRUCTURAS DE PROGRAMACIÓN DE
PYTHON
Al igual que otros lenguajes,
Python implementa la
estructura IF - THEN. Los
bloques IF-THEN se pueden
utilizar para permitir que el
código tome decisiones según
el resultado de una expresión,
como se muestra en la figura 1.
El código realiza algunas
pruebas y publica un mensaje
conforme a los resultados de la
prueba. Observe que Python
también implementa dos
subestructuras denominadas La forma abreviada de ELSE IF, ELIF, se usa para
ELSE y ELIF. ELSE permite al realizar una segunda prueba en caso de que la
programador especificar primera expresión sea falsa y se requiera otra
instrucciones para ejecutar si la prueba. Puede haber cero o más ELIF y la parte
expresión es falsa. ELSE es opcional.
ESTRUCTURAS DE PROGRAMACIÓN DE
PYTHON

El bucle FOR en Python itera los elementos de cualquier secuencia (una lista o una
cadena) en el orden en que aparecen en la secuencia, como se muestra en la figura 2.
El bucle WHILE ejecuta un bloque de códigos si la expresión es verdadera. El programa
que se muestra en la figura 3, utiliza un bucle WHILE para calcular y mostrar una
subsecuencia inicial de una serie Fibonacci en la que cada número de la serie es la suma de
los dos anteriores.
ESTRUCTURAS DE PROGRAMACIÓN DE
PYTHON

La tercera línea contiene un operador de asignación múltiple. Las variables a y b reciben


los nuevos valores de 0 y 1 en una única declaración.
El bucle WHILE calcula el término siguiente en la serie Fibonacci siempre que la condición
b < 10 sea verdadera. Como en C, Python asume cualquier valor del número entero que no
sea cero como verdadero y cero como falso. La prueba que se utiliza en la figura es una
comparación simple
ESTRUCTURAS DE PROGRAMACIÓN DE
PYTHON

Observe que el cuerpo del bucle está indentado. La indentación es la forma en que
Python agrupa las declaraciones. En el indicador interactivo, debe escribir una
tabulación o espacio para cada línea indentada. Las entradas más complejas de Python
deben realizarse con un editor de texto. Cuando una declaración compuesta se ingresa
interactivamente, debe ir secundada por una línea en blanco para indicar la finalización
(porque el analizador no puede adivinar qué línea será la última). Observe que cada línea
dentro de un bloque básico se debe indentar por la misma cantidad.
PRÁCTICA DE LABORATORIO:
CONFIGURACIÓN DE UN ENTORNO DE
SERVIDOR VIRTUALIZADO

El software de virtualización
permite que un único servidor físico
aloje varias máquinas virtuales.
Esas máquinas quedan aisladas unas
de otras y pueden guardarse,
copiarse y compartirse. Esto
proporciona un excelente entorno de
desarrollo y pruebas.
En esta práctica de laboratorio,
configurará un entorno de desarrollo
virtual e instalará una máquina
virtual como preparación para
experimentar con Python.

Práctica de laboratorio: configuración de un entorno de servidores virtualizados


Haga clic aquí para descargar la Máquina Virtual
PRÁCTICA DE LABORATORIO: CREE
UN JUEGO SIMPLE CON IDLE DE
PYTHON

En esta práctica de laboratorio, creará un juego de adivinanzas simple con números mediante
Python. Este juego se basa en el diagrama de flujo creado con anterioridad.
Práctica de laboratorio: cree un Juego simple con IDLE de Python
PRÁCTICA DE LABORATORIO: CREE
UN JUEGO SIMPLE CON IDLE DE
PYTHON

La creación de prototipos es el proceso de creación de un modelo de trabajo rudimentario


de un producto o sistema. Para crear un prototipo en IoT, resulta útil tener habilidades de
diseño, eléctricas, físicas y mecánicas (trabajar con las manos para armar cosas) y de
programación, así como comprender el funcionamiento de TCP/IP. Pero no necesita ser
un experto en ninguna de estas áreas. De hecho, crear un prototipo lo ayuda a mejorar
estas aptitudes.
PRÁCTICA DE LABORATORIO: CREE
UN JUEGO SIMPLE CON IDLE DE
PYTHON

Debido a que IoT aún está en desarrollo, todavía existen tareas desconocidas por
descubrir. Este es un gran momento para inventar algo que forme parte de IoT. Debido a
que IoT combina personas, procesos, datos y objetos, no hay un límite para los inventos
que IoT pueda ayudar a crear y luego incorporar.
Para conocer las novedades y las ideas de las que ya se habla en Idc, haga clic aquí.
COMO CREAR UN PROTOTIPO

¿Cómo se crea un prototipo? Existen algunas formas de comenzar. Un equipo de Google utilizó el
“método rápido de creación de un prototipo” para crear Google Glass. Haga clic aquí para ver una
conferencia TedTalk sobre este proceso.
Por supuesto, Google tiene una amplia variedad de recursos para pagar a las personas y los materiales
que participan en la creación de prototipos. La mayoría de nosotros necesitamos algo de ayuda
financiera para materializar nuestras ideas y aplicarlas a un prototipo. Para nosotros, existe la
financiación colectiva. Kickstarter, Indiegogo y Crowdfunder son solo tres de los numerosos programas
de financiación colectiva en línea. Haga clic aquí para ver el video de Kickstarter del reloj Pebble. Este
video en línea se utilizó para generar las donaciones que ayudaron a este grupo de inventores a crear el
reloj Pebble.
¿Qué invención de IoT creará?
MATERIALES FÍSICOS

Un buen lugar para comenzar es, por


supuesto, Internet. Las personas
intercambian ideas hace siglos, pero
Internet permite el intercambio de ideas
en un nivel totalmente nuevo. Personas
que nunca se encontraron físicamente
ahora puedan colaborar y trabajar juntas.
Existen varios sitios web que puede
visitar para conectarse con otros
creadores.
Maker Media es una plataforma global
para conectar a los creadores entre sí a fin
de que intercambien proyectos e ideas. La
plataforma también proporciona un lugar
donde los creadores pueden buscar y
adquirir productos para sus proyectos.
Para obtener más información, visite
Makezine en http://makezine.com.
MATERIALES FÍSICOS

Es útil estar capacitado para trabajar con ciertos materiales; por ejemplo, la madera y el
metal son materiales comunes en la creación de prototipos, pero para un principiante podría
ser difícil usarlos. Es posible que se sorprenda con lo que puede llegar a hacer con plástico,
arcilla, papel y cables. Realice una búsqueda en Google para obtener más información o
ideas sobre cómo trabajar con los diferentes materiales de creación de prototipos.
MATERIALES FÍSICOS

LEGO Mindstorms tiene una gran comunidad de colaboradores y fanáticos. Con LEGO
Mindstorms, puede crear robots de LEGO y controlarlos mediante una aplicación. Los
equipos vienen con todo lo que se necesita para que funcione. Visite LEGO Mindstorms
en http://mindstorms.lego.com.
MATERIALES FÍSICOS

Meccano, o Erector Set, es un sistema de construcción de modelos que consiste en bandas


de metal, placas, vigas angulares, ruedas, ejes y engranajes, todos reutilizables, con
tuercas y pernos para conectar las piezas. Le permite armar prototipos funcionales y
dispositivos mecánicos. Visite Erector Set en www.erector.us.
MATERIALES FÍSICOS

La impresión en 3D es el proceso por el cual se crea un objeto sólido basado en un


archivo informático de un modelo en 3D. Una máquina, denominada “impresora 3D”,
se conecta a la computadora. En la actualidad, varias empresas arman y venden
impresoras 3D. Visite Makerbot en https://www.makerbot.com.
KIT DE HERRAMIENTAS
ELECTRÓNICAS

Los programas informáticos no se pueden ejecutar sin computadora. Aunque es posible


crear programas para casi cualquier computadora, algunas plataformas están diseñadas
para principiantes. A continuación, se indican algunas de las plataformas más populares.
KIT DE HERRAMIENTAS
ELECTRÓNICAS

Arduino es una plataforma informática física de código abierto basada en una simple placa
de microcontroladores y un entorno de desarrollo para escribir el software de la placa. Se
pueden desarrollar objetos interactivos que recogen información de diversos switches o
sensores para controlar luces, motores y otros objetos físicos. Visite Arduino en 
http://arduino.cc.
KIT DE HERRAMIENTAS
ELECTRÓNICAS

Raspberry Pi es una computadora de bajo costo del tamaño de una tarjeta de crédito que
se conecta a un monitor de computadora o a un televisor. Se opera mediante un teclado y
un mouse estándar. Es capaz de funcionar como una computadora, desde navegar en
Internet y reproducir video de alta definición, hasta crear hojas de cálculo, procesar texto
y usar juegos. Visite Raspberry Pi en http://www.raspberrypi.org.
KIT DE HERRAMIENTAS
ELECTRÓNICAS

Beaglebone es muy similar a Raspberry Pi en tamaño, requisitos de energía y aplicación.


Beaglebone tiene más capacidad de procesamiento que Raspberry Pi, por lo tanto es una
mejor opción para aplicaciones con mayores requisitos de procesamiento. Visite
Beaglebone en http://beagleboard.org.
RECURSOS DE PROGRAMACIÓN

La programación es fundamental para IoT. La creación de un código personalizado es muy


útil cuando se desarrolla una solución de IoT. Ya aprendió acerca de Blockly y Python.
Existen muchos otros recursos gratuitos que pueden ayudarlo a desarrollar habilidades de
programación.
El MIT OpenCourseWare (OCW) es una publicación basada en la Web de casi todo el
contenido de los cursos de MIT. Abierto y disponible para todo el mundo, OCW es un
excelente lugar para familiarizarse con la programación informática de manera gratuita. Se
pueden buscar cursos de OCW relacionados con programación en 
http://ocw.mit.edu/courses/intro-programming.
RECURSOS DE PROGRAMACIÓN

Khan Academy es un sitio web educativo sin fines de lucro creado en 2006 para
proporcionar “educación libre, de primera clase, a cualquier persona y en cualquier lugar”.
Las lecciones relacionadas con la programación informática se pueden encontrar en 
https://www.khanacademy.org/computing/cs.
Code Academy es otro excelente recurso. Se basa en la interactividad para enseñar a las
personas a escribir programas informáticos. Los puede encontrar en 
http://www.codeacademy.com.
TALLERES DE INVENCIÓN Y DE
EMPRENDIMIENTO EN LA COMUNIDAD

Entonces, es probable que haya creado algo realmente genial. ¿Qué hacer ahora? Existen
varios lugares en los que puede recibir ayuda para exponer su idea o su prototipo a otros.
Investigue cuáles son las opciones disponibles en su comunidad. Consulte con el
Gobierno, las instituciones educativas y la Cámara de Comercio locales para obtener
información sobre talleres, clases y asesoramiento especializado.
TALLERES DE INVENCIÓN Y DE
EMPRENDIMIENTO EN LA COMUNIDAD

Internet tiene muchos recursos para ayudar a que su idea tenga exposición. Quirky es un
buen ejemplo. Quirky permite que los usuarios compartan sus ideas. Cuando se envía una
idea, otros usuarios de Quirky pueden votar y elegir si desean apoyarla o no. Si una idea es
buena, se puede convertir en un producto real. Puede conocer más acerca de Quirky en 
https://www.quirky.com/how-it-works.
PRÁCTICA DE LABORATORIO:
CONFIGURACIÓN DE PL-APP CON
RASPBERRY PI

El Laboratorio de Prototipos
(Prototying Lab) de Cisco es un
conjunto de componentes de
hardware y de software que
permite diseñar rápidamente
prototipos y modelos de distintas
soluciones de digitalización y
análisis de datos de IoT.
Los componentes de hardware
forman parte del kit de práctica de
laboratorio de prototipos (PL-
El PL-Kit se puede utilizar para construir prototipos sofisticados
Kit). PL-Kit se basa en placas de
de sistemas de IoT integrales que pueden detectar y accionar el
prototipos de HW abiertas, como
mundo físico real, analizar y procesar los datos y conectarse a
Raspberry Pi y Arduino. PL-Kit
sistemas de redes y nubes. El principal componente de software
incluye sensores adicionales,
de la práctica de laboratorio de prototipos es la aplicación de
actuadores y componentes
prácticas de laboratorio de prototipos (PL-App).
electrónicos.
PRÁCTICA DE LABORATORIO:
CONFIGURACIÓN DE PL-APP CON
RASPBERRY PI

PL-App junto con PL-Kit permiten la digitalización de IoT y la creación rápida de


prototipos y el aprendizaje del análisis de datos. PL-App brinda un entorno web para
acceder a los recursos de software y hardware de Raspberry Pi mediante Jupyter
Notebooks. Con la PL-App, puede acceder a prácticas de laboratorio ya existentes sobre
IoT o escribir sus propias aplicaciones nuevas directamente en la placa, ejecutarlas y
monitorear la salida de la placa con diversas visualizaciones.
PRÁCTICA DE LABORATORIO:
CONFIGURACIÓN DE PL-APP CON
RASPBERRY PI
En esta práctica de laboratorio, descargará un
sistema operativo de Raspberry Pi y lo
instalará en una tarjeta microSD. Después de
instalar la tarjeta microSD, el Raspberry Pi y
el Arduino conectado a Raspberry Pi pueden
controlarse desde la interfaz de PL-App. Esta
práctica de laboratorio brinda pautas básicas
para la configuración inicial de la placa de
Raspberry Pi con el entorno de PL-App.
Práctica de laboratorio: configuración de PL–
App con Raspberry Pi
PL-App Launcher for Windows
PL-App Launcher for Mac
PL-App Image for Introduction to IoT 2.0
Haga clic aquí para ver un recorrido en video
por esta práctica de laboratorio.
Haga clic aquí para leer una transcripción del
video.
PRÁCTICA DE LABORATORIO
OPCIONAL: USO DE UNA NOTEBOOK
DE PL-APP
Las notebooks de PL-App se
basan en el proyecto Jupyter de
código abierto. Las Jupyter
Notebooks permiten que el
contenido de marcado, por
ejemplo textos y gráficos, se
combine con el código interactivo
en celdas diferentes. Las celdas
con código pueden adaptarse
según necesidades específicas.
Pueden modificarse y ejecutarse
de manera independiente. Esto
permite la creación rápida de
conceptos de prototipos, en los
cuales el desarrollo de la
aplicación final puede dividirse En esta práctica de laboratorio explorará la estructura
en secciones más pequeñas, en las de las Jupyter Notebooks y la forma en que se pueden
que cada una aborde un problema usar en el proceso de creación de prototipos.
específico.
PRÁCTICA DE LABORATORIO
OPCIONAL: USO DE UNA NOTEBOOK
DE PL-APP

Nota: Para ver el código de Blockly en las Jupyter Notebooks, use el navegador web Google
Chrome.
Práctica de laboratorio: Cómo usar un cuaderno de PL-App
Haga clic aquí para ver un recorrido en video por esta práctica de laboratorio.
Haga clic aquí para leer una transcripción del video.
PRÁCTICA DE LABORATORIO
OPCIONAL: ACTIVE UN LED CON
RASPBERRY PI Y PL-APP

En esta práctica de laboratorio, utilizará una notebook de PL-App de ejemplo para


interactuar con un LED como parte de un circuito simple. Armará un circuito simple en
una placa de prueba con un resistor y un LED. Luego, utilizará el programa de activación
del LED para controlar la velocidad de activación del LED.
Nota: Para ver el código de Blockly en las Jupyter Notebooks, use el navegador web
Google Chrome.
PRÁCTICA DE LABORATORIO
OPCIONAL: ACTIVE UN LED CON
RASPBERRY PI Y PL-APP

Nota: Una vez que descargue la Jupyter Notebook, siga estas instrucciones para cargar el
archivo en el directorio /myfiles de la Raspberry Pi y descomprima el archivo.
Práctica de laboratorio: activación de un LED con Raspberry Pi y PL-App (vista preliminar
de la práctica de laboratorio)
Práctica de laboratorio: activación de un LED con Raspberry Pi y PL-App (Jupyter
Notebook)
Haga clic aquí para ver un recorrido en video para esta práctica de laboratorio.
Haga clic aquí para leer una transcripción del video.
PRÁCTICA DE LABORATORIO
OPCIONAL: INTRODUCCIÓN A
ARDUINO

En esta práctica de laboratorio, aprenderá a usar Arduino y Arduino IDE para controlar
la velocidad de parpadeo de un LED.
Práctica de laboratorio: introducción a Arduino
Haga clic aquí para ver un recorrido en video por esta práctica de laboratorio.
Haga clic aquí para leer una transcripción del video.
CAPITULO II. RESUMEN

En este capítulo, primero se


analizó cómo aplicar
programación básica para el
soporte de dispositivos de IoT.
Los diagramas de flujo son
diagramas que se utilizan para
representar procesos. Existen dos
tipos comunes de software
informático: software del sistema
y software de aplicaciones. Los
programas para software de
aplicaciones se crean con el fin de
realizar una tarea determinada. El •Variables locales: estas son variables que se
software del sistema funciona encuentran dentro del alcance de un
entre el hardware de la programa/función/procedimiento.
computadora y el programa de •Variables globales: estas son variables que se
aplicaciones. Las variables de encuentran dentro del alcance en el tiempo de ejecución
programación se pueden clasificar del programa. Cualquier parte del programa puede
en dos categorías: recuperarlas.
CAPITULO II. RESUMEN

Las estructuras lógicas más comunes son


los bucles IF–THEN, FOR y WHILE.
Blockly es una herramienta de
programación visual creada para ayudar a
los principiantes a comprender los
conceptos de programación. Blockly
implementa la programación visual
mediante la asignación de diferentes
estructuras de programas a bloques de
color.
Python es un lenguaje muy común
diseñado para ser fácil de leer y escribir.
Python es un lenguaje interpretado; por lo
tanto, requiere un intérprete para analizar
y ejecutar el código de Python.
CAPITULO II. RESUMEN

Las variables son áreas de memoria


rotuladas que se utilizan para almacenar
datos de programas de tiempo de
ejecución. Python admite muchas
funciones y tipos de datos, incluidos
range(), tuplas, listas, conjuntos,
diccionario. Python también implementa
dos subestructuras denominadas ELSE y
ELIF.
A continuación, el capítulo presentó de
manera detallada la creación de prototipos.
La creación de prototipos es el proceso de
creación de un modelo de trabajo
rudimentario de un producto o sistema. Un
equipo de Google utilizó el “método
rápido de creación de un prototipo” para
crear Google Glass. Internet permite los
intercambios de ideas en un nivel
totalmente nuevo.
CAPITULO II. RESUMEN

Existen varios sitios web que puede visitar para conectarse con otros creadores:
http://makezine.com
http://mindstorms.lego.com
www.erector.us
https://www.makerbot.com
http://arduino.cc
http://www.raspberrypi.org
http://beagleboard.org
https://blockly-games.appspot.com/
http://ocw.mit.edu/courses/intro-programming
https://www.khanacademy.org/computing/cs
http://www.codeacademy.com
https://www.quirky.com/how-it-works

También podría gustarte