Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

¿Dónde está mi cosa?

Componentes y suministros

Raspberry Pi 2 Modelo B
× 1
Arduino UNO
× 1
Módulo RFID JT2850
× 1
Antena RFID JT606
× 1

Herramientas y máquinas necesarias

Microsoft PC con Windows10 con Visual Studio 2015 instalado
Teléfono Android

Aplicaciones y servicios en línea

Microsoft Windows 10 IoT Core
Microsoft Azure
Microsoft Visual Studio 2015

Acerca de este proyecto

Antecedentes

¿Alguna vez te has visto en una situación en la que cada vez que intentas buscar algo, pasas mucho tiempo buscándolo y aún no puedes encontrarlo? Aprovechando la tecnología RFID, utilizando un lector RFID y múltiples etiquetas RFID adjuntas al artículo, podemos localizar fácilmente el artículo que almacenamos. Siempre que compramos un artículo nuevo, simplemente pegue una etiqueta RFID en él y registre los detalles del artículo en el sistema. Una vez que necesitemos buscar el artículo pero no podamos recordar dónde está, simplemente haga una búsqueda en la aplicación móvil y sabrá que se encuentra actualmente en qué habitación de su casa.

Toda la idea

Los componentes de este proyecto consistirán en un módulo lector RFID UHF, una antena RFID UHF, un Arduino UNO, un Raspberry Pi2 con núcleo Windows10 IoT (puede consultar aquí http://ms-iot.github.io/content/en -US / GetStarted.htm si no está seguro de cómo instalar Windows10 IoT core), una aplicación móvil y un servicio web Azure para el almacenamiento de datos. Habrá varios módulos RFID UHF en la casa, y cada módulo RFID UHF se conectará a Arduino UNO con Arduino luego se conectará a Raspberry Pi2. Siempre que un artículo desee ser rastreado por el sistema, se adjuntará una etiqueta RFID. El detalle del artículo y el valor RFID son necesarios para registrarse en el sistema. Los datos de cada registro se almacenarán en la base de datos SQL de Azure a través de la API web de Azure. Siempre que el usuario vaya a buscar un artículo en casa, pero no esté seguro de que el artículo estará ubicado en qué habitación de su casa. Él / ella puede encender su aplicación móvil. La aplicación móvil enviará la solicitud de búsqueda a Raspberry Pi2 a través de la red Wifi. Una vez que Raspberry Pi2 recibió la solicitud de búsqueda, enviará la solicitud a todos los Arduino Uno conectados a ella. Arduino UNO enviará un comando de lectura al módulo RFID UHF. Una vez que cualquiera de los lectores RFID UHF en diferentes ubicaciones logra capturar la RFID requerida, devolverá un valor a Arduino UNO. Arduino UNO devolverá la ubicación del lector RFID a Raspberry Pi2 y RaspberryPi2 procesará aún más el resultado de la búsqueda y volverá a la aplicación móvil.
si tu

¿Cómo se hace?

Voy a desarrollar una aplicación en segundo plano que se ejecute en el núcleo de Windows 10 IoT, es posible que necesitemos saber la dirección IP de Raspberry Pi 2. No es necesario tener una pantalla. Gracias al todopoderoso Windows IoT Core Watcher. Todo lo que necesita es conectar su Raspberry Pi2 modelo B como se muestra a continuación:

Al conectar la PC y la Raspberry PI2 a través de un cable de red, el todopoderoso Windows IoT Core Watcher podrá decirle cuál es la dirección IP de su Raspberry Pi2:

Cree un proyecto en Visual Studio 2015

Luego, puede comenzar a desarrollar usando Visual Studio 2015, simplemente descargue los códigos que compartí aquí y ejecútelo usando Visual Studio 2015.

Descargue el código de github y podrá ejecutar el proyecto directamente. Si está intentando crear un nuevo proyecto, puede intentarlo de esta manera:

1. Vaya a Archivo -> Nuevo-> Proyecto

2. En las plantillas de Visual C #, busque "Aplicación en segundo plano (IoT)". Introduzca el nombre de su proyecto. Se creará su proyecto.

3. Una vez que se ha creado el proyecto, lo siguiente es configurar la configuración de depuración. Haga clic derecho en el proyecto y seleccione "Propiedades"

4. En la ventana de propiedades del proyecto, haga clic en la pestaña de depuración y realice la siguiente configuración:

  1. Plataforma:ARM
  2. Dispositivo de destino:máquina remota
  3. Máquina remota:
  4. Desmarque "Usar autenticación"

Guarde la configuración y ahora puede comenzar a codificar en el archivo StartupTask.cs dentro de su proyecto recién creado.


Depuración en Visual Studio 2015

Una vez que haya completado la codificación y le gustaría comenzar a depurar, puede seguir los siguientes pasos y capturas de pantalla:

1. Haga clic en la barra gris del lado izquierdo para establecer un punto de interrupción en la línea de código que desea investigar:

2. A continuación, haga clic en el botón verde "Máquina remota" para iniciar la depuración:

3. Una vez ingresado al modo de depuración, el botón verde "Máquina remota" cambiará a "Continuar" al mismo tiempo que se habilitarán los botones de paso:

  • Siguiente:muestra la siguiente declaración
  • Ingrese:ingrese a la función y observe los códigos dentro de la función
  • Pasar por encima:pase por encima de la línea actual y busque en la siguiente línea de código
  • Salga:salga de la función y continúe depurando con el código anterior.


Botón Continuar con "Siguiente", "Pasar a", "Pasar al otro lado" y Salir "

Mientras ejecuta la depuración, puede mover el cursor del mouse para inspeccionar cierto valor de la variable o resaltar y hacer clic con el botón derecho en la variable y seleccionar "Agregar vigilancia" para agregar la variable a la lista de observación:

Cree una API web en Azure para atender transacciones de aplicaciones móviles y de IoT

Crear proyecto de aplicación web Asp.NET

1. Cree una aplicación web ASP.NET, introduzca el nombre del proyecto y haga clic en el botón Aceptar en la parte inferior

2. En la siguiente pantalla, haga clic en Elegir MVC en la plantilla ASP.NET 4.5.2 (si es un aventurero, no dude en probar la Plantilla de vista previa de ASP.NET 5 con el marco MVC6. El paso será el mismo)

3. A continuación, configure el método de autenticación en "Sin autenticación"

4. También tenga en cuenta que si desea alojar esta API web en un servidor en la nube, puede marcar la opción "Alojar en la nube" como se muestra a continuación:

Si no tiene una cuenta de microsoft azure, puede registrarse para una prueba gratuita y disfrutar de un crédito gratuito de $ 200. Simplemente haga clic aquí:https://azure.microsoft.com/en-us/pricing/free-trial/

5. Si elige alojar su API web en Azure Web App, una vez que haga clic en "Aceptar", la siguiente pantalla necesitará que inicie sesión en Microsoft Azure.

6. Una vez que haya iniciado sesión correctamente, simplemente ingrese el nombre de su aplicación web y los detalles posteriores como se muestra en el formulario:

una vez que haya completado toda la información, haga clic en Aceptar y espere un rato a que VS2015 cree una aplicación web y una base de datos en su cuenta de Azure.


Una vez que la aplicación web local y en la nube se haya creado correctamente, a continuación probablemente desee crear una base de datos para su aplicación. Gracias a Entity framework en MVC, ahora podemos configurar nuestra base de datos para nuestra aplicación web con unos simples pasos.

Usando Entity Framework

Voy a usar NuGet Package Manager Console para la instalación. Entonces, en primer lugar, deberá ejecutar su Administrador de paquetes Nuget de la siguiente manera:Herramientas-> Administrador de paquetes NuGet-> Consola del administrador de paquetes

2. A continuación, escriba el comando "Install-Package EntityFramework" en la consola del administrador de paquetes a continuación:

3. A continuación, deberá crear una clase de modelo para describir la tabla y los campos de su base de datos. Simplemente haga clic derecho en la carpeta Modelo y haga clic en "Agregar" -> "Clase ..."

Una vez que se crea la nueva clase, agregue las siguientes líneas:

usando System.ComponentModel.DataAnnotations;

usando System.ComponentModel.DataAnnotations.Schema;

Tras la creación de la clase de modelo, el siguiente paso es crear sus controladores WebAPI junto con la acción utilizando Entity framework. Siga la pantalla de impresión a continuación, haga clic con el botón derecho en la carpeta Controladores y seleccione "Agregar" -> "Nuevo elemento con scaffold":

Seleccione "Controlador Web API 2 con acciones, usando Entity Framework" en la categoría Web API en la siguiente pantalla:

Una vez que se hace clic en el botón "Agregar", se mostrará la siguiente pantalla:


Haga clic en ' + 'en el campo Clase de contexto de datos para crear una nueva clase de contexto de datos:

Haga clic en Agregar en la siguiente pantalla para crear:

una vez que se hayan llenado todos los campos, haga clic en "Agregar" para generar el elemento andamio:

Una vez generado correctamente el elemento andamio, podrá ver el controlador y la clase de contexto de datos caer en la carpeta Controladores y la carpeta Modelos:

A continuación, ejecute Enable-Migrations comando en la consola del administrador de paquetes:

Después de Habilitar migraciones comando, seguido de Add-Migration comando:

Finalmente Base de datos de actualización El comando creará una base de datos basada en el script de migración generado a partir de Modelos. Podrá encontrar la base de datos recién creada en Add_Data tabla:

Publique su API WEB

Una vez que la base de datos se ha configurado correctamente, la API web se considera completa (el controlador Scaffolded generará una función básica para la llamada RESTful). Solo para garantizar que las funciones GetMything (GET), PostMything (POST), PutMything (PUT) y Deletemything (DELETE) existan en MyThingsController.

Una vez que se haya completado el proyecto de API web. A continuación, puede publicar la API web en la aplicación web de Azure con los siguientes pasos:


1. Seleccione el menú Compilar> Publicar MyThingAPI como la siguiente captura de pantalla:

2. Aparecerá la siguiente ventana emergente que le permitirá seleccionar un destino de publicación. Puede seleccionar Aplicaciones API de Microsoft Azure (Vista previa) si está utilizando la plantilla ASP.NET5 MVC 6 para su API web:

3. Una vez que se haya hecho clic en Microsoft Azure Web Apps, se mostrará la siguiente pantalla y será necesario que inicie sesión en su cuenta azure:

Ingrese sus credenciales azure e inicie sesión:

4. Una vez que haya iniciado sesión correctamente, podrá recuperar su aplicación web existente alojada en azul (debe crearse antes al crear este proyecto en VS2015):

5. Una vez que se hayan seleccionado las aplicaciones web y se haya hecho clic en "Aceptar", se mostrará la siguiente pantalla:

Se propondrá la configuración de conexión, simplemente haga clic en Siguiente para continuar

6. En la pestaña de configuración, verá la cadena de conexión de la base de datos, otra información se completará automáticamente, pero asegúrese de que ambas casillas de verificación "Usar esta cadena de conexión en tiempo de ejecución" y "Ejecutar la primera migración de código" estén marcadas:

6. Una vez que haya completado todas las configuraciones, haga clic en Publicar y Visual Studio iniciará la aplicación web de Azure inmediatamente después de la publicación exitosa:

Una vez que se publique la API web, puede probar la API REST. Estoy usando la extensión de Chrome "Advance REST Client" para probar:

Puede probar la siguiente cadena json para la llamada POST:

{

id:1,

estado:"0",

rfid:"1009622005390623",

imagen:"",

nombre:"alguna herramienta",

tipo:"herramienta",

ubicación:"dormitorio",

createdAt:"2015-10-13T10:26:01.14",

lastUpdatedAt:"2015-10-13T10:26:01.14"

}


Crear aplicación universal de Windows

Dado que la aplicación Iot Background y la API REST están listas, lo siguiente es crear una aplicación universal de Windows como cliente. La aplicación universal nos permite usar un conjunto de códigos para varios dispositivos. Creo una aplicación universal para tableta como ejemplo aquí (simplemente puede cambiar la configuración de diseño para teléfono móvil o computadora portátil).

Para crear una aplicación universal, simplemente haga clic en Archivo> Nuevo> Proyecto en su Visual Studio 2015, luego seleccione la aplicación universal de la siguiente manera:

Una vez creada la nueva solución, puede reemplazar los scripts cs y los archivos .xaml con MyThingApp que compartí en GitHub.

Depuración en la aplicación universal de Windows:

La aplicación universal de Windows proporcionó varias configuraciones de depuración que incluyen plataformas ARM, x64 y x86. Si está ejecutando la depuración en su PC local que ejecuta Windows 64 bit, deberá elegir x64 y hacer clic en el botón verde (Seleccione "máquina local")

si su aplicación se ejecuta sin errores, debería verse así:

Configurar el Centro de notificaciones y las notificaciones push para UWP


1. Una vez que haya terminado la API web y la Aplicación universal, puede iniciar sesión aquí

https://dev.windows.com/en-us/dashboard/Application/New para reservar un nombre de aplicación.

2. Una vez que se haya creado el nombre de la aplicación, regrese a MyThingApp y haga clic derecho en su proyecto. Seleccione Tienda> Asociar aplicación con la tienda

para la creación de un centro de notificaciones, consulte aquí:

https://azure.microsoft.com/en-us/documentation/articles/notification-hubs-windows-store-dotnet-get-started

3. luego agregue la siguiente función en App.xaml.cs

vacío asíncrono privado InitNotificationsAsync ()

{

var channel =await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync ();

var hub =new NotificationHub ("notificación", "Endpoint =sb://smartwardrobe.servicebus.windows.net/; SharedAccessKeyName =DefaultListenSharedAccessSignature; SharedAccessKey =MlHoVfn1Ub / c2ThUha + Crn7hHSGmqofrW3cJ6 )IK89;

var result =await hub.RegisterNativeAsync (channel.Uri);

}

también llame a esta nueva función dentro de la función OnLaunched:

anulación protegida void OnLaunched (LaunchActivatedEventArgs e)

{

InitNotificationsAsync ();

Finalmente, agregue esta línea de código en MainPage.cs, Función MainPage ():

this.NavigationCacheMode =NavigationCacheMode.Required;

4. Finalmente, configure una tarea de subprocesamiento dentro de MyThing Web API> MyThingController con los siguientes códigos:

clase pública NotificationClass {

async interno System.Threading.Tasks.Task SendNotificationAsync (string rfid)

{

NotificationHubClient hub =NotificationHubClient

.CreateClientFromConnectionString ("", "");

var toast =@ " New Mything necesita actualizar "; // /MainPage.xaml?value=test

aguardar hub.SendWindowsNativeNotificationAsync (brindis);

return null;

}

}

y los siguientes códigos tras la creación exitosa de un nuevo registro:

NotificationClass notClass =new NotificationClass ();

Thread notificationThread =new Thread (async x => {await notClass.SendNotificationAsync (myThing.rfid);});

notificationThread.Start ();

5. Una vez que la configuración se haya realizado correctamente, se recibirá una notificación de brindis como la que se muestra a continuación cuando se haya creado correctamente el registro:

6. haga clic en la notificación y se iniciará MyThingApp que se instaló en su PC:

haga clic en "Aceptar" y verá que la nueva RFID se agrega al formulario de inscripción. Complete el resto de la información y actualice.



VÍNCULOS DE REFERENCIA:

1.Guía paso a paso para configurar Windows10 Iot Core:- http://ms-iot.github.io/content/en-US/GetStarted.htm

2.Configurar Visual Studio 2015 en su PC:- http://ms-iot.github.io/content/en-US/win10/SetupPCRPI.htm

3.Instrucciones paso a paso para configurar Windows10 IoT Core en Raspberry Pi2:- http://ms-iot.github.io/content/en-US/win10/SetupRPI.htm

4.Cómo desarrollar una aplicación de IoT (muestra de Blinky):- http://ms-iot.github.io/content/en-US/win10/samples/Blinky.htm

5.Ejemplo de serie de Windows IoT:- http://ms-iot.github.io/content/en-US/win10/samples/SerialSample.htm

6.Repositorios de GitHub de Ms-IoT:- https://github.com/ms-iot

7.Windows en GitHub:- http://microsoft.github.io/windows/

8.Ejemplo de serie del software Arduino (usando UART):- https://www.arduino.cc/en/Tutorial/SoftwareSerialExample

9.Tutorial de comunicación en serie deparkFun:- https://learn.sparkfun.com/tutorials/serial-communication

10.Comience con Azure Notification Hub:- https://azure.microsoft.com/en-us/documentation/articles/notification-hubs-android-get-started/

11.Agregue notificaciones push a su aplicación de servicios móviles:- https://azure.microsoft.com/en-us/documentation/articles/mobile-services-dotnet-backend-android-get-started-push/

12.Code First Migraciones:- https://msdn.microsoft.com/en-sg/data/jj591621.aspx

13.Publicar en una aplicación web de Azure mediante Visual Studio:- http://docs.asp.net/en/latest/tutorials/publish-to-azure-webapp-using-vs.html

14.Publique la aplicación en Azure Azure App Service:- http://www.asp.net/web-api/overview/data/using-web-api-with-entity-framework/part-10

Código

  • Código Arduino para módulo lector RFID
Código Arduino para módulo lector RFID C / C ++
 / * comando de lectura se enviará al módulo RFID una vez que se lea la etiqueta, volverá al puerto serie * / # include  SoftwareSerial mySerial (10, 11); // RX, TXvoid setup () {// Abra las comunicaciones en serie y espere a que se abra el puerto:Serial.begin (9600); while (! Serial) {; // espera a que se conecte el puerto serie. Necesario solo para Leonardo} // establecer la velocidad de datos para el puerto SoftwareSerial mySerial.begin (9600);} void loop () {// ejecutar una y otra vez if (mySerial.available ()) {// enviar el comando de lectura al mensaje de byte del módulo RFID [] ={0xA0,0x06,0x80,0x00,0x01,0x02,0x01,0xD6}; mySerial.write (mensaje, tamaño de (mensaje)); // enviar los datos de vuelta a serial if (Serial.available ()) Serial.write (mySerial.read ()); }} 
¿Dónde está lo mío en GitHub?
https://github.com/seeyouu87/where-is-my-thing

Piezas y carcasas personalizadas

Módulo lector UHF RFID. se utiliza para leer etiquetas RFID. uhf_reader_jt2850.svgUHF Módulo lector RFID. se utiliza para leer etiquetas RFID uhf_reader_jt2850.svgUHF Módulo lector RFID. se utiliza para leer etiquetas RFID uhf_reader_jt2850.svg

Esquemas

¿Dónde está lo mío en Fritzing?
Esquemas en Fritzing.org La conexión para Arduino al módulo RFID UHF.

Proceso de manufactura

  1. Hoja de referencia de Microsoft Azure 2020
  2. Impresión 3D FDM:¿Dónde estamos hoy?
  3. ¿Dónde está la ventaja en la informática de borde?
  4. Verificación de datos de la Industria 4.0:¿Dónde estamos hoy?
  5. 4 tecnologías alternativas de RFID pasiva a considerar
  6. La descripción general completa de RFID activa
  7. Control de acceso con QR, RFID y verificación de temperatura
  8. ¿De dónde vienen los metales?
  9. ¿Dónde deberías construir?
  10. ¿De dónde se originó el concepto de aserrado?
  11. ¿Dónde está el aire comprimido?