Raspberry Pi, Arduino en RFID-componenten efficiënt organiseren en lokaliseren
Onderdelen en benodigdheden
| Raspberry Pi 2 Model B | 1 |
| Arduino UNO | 1 |
| JT2850 RFID-module (UHF) | 1 |
| JT606 RFID-antenne | 1 |
Benodigde tools
- Windows 10 PC met Visual Studio 2015
- Android-telefoon
Apps en online services
- Microsoft Windows 10 IoT Core
- Microsoft Azure (Web Apps, SQL Database, Notification Hub)
- Microsoft Visual Studio 2015
Over dit project
Achtergrond
Ken je dat: je zoekt iets, spendeert er lang aan, en vindt het niet? Met RFID-technologie (reader + tags op items) kun je items gemakkelijk terugvinden. Nieuwe item? Plak een RFID-tag erop, registreer in de app. Zoek later via de mobiele app: je ziet direct in welke ruimte het item zich bevindt.
Heel het concept
Architectuur:
- Meerdere UHF RFID-readers in het huis, elk verbonden met een Arduino UNO.
- Arduino's verbonden met centrale Raspberry Pi 2 (Windows 10 IoT Core).
- Items krijgen RFID-tag. Details + tag-ID worden geregistreerd via mobiele app → Azure Web API → Azure SQL Database.
- Zoekopdracht: app stuurt verzoek via WiFi naar Pi → Pi stuurt leescommando naar alle Arduino's → RFID-reader die tag detecteert, rapporteert locatie terug → Pi → app.

Hoe te bouwen
Raspberry Pi 2 voorbereiden (Windows 10 IoT Core)
- Installeer Windows 10 IoT Core op Pi 2: stap-voor-stap gids.
- Vind IP-adres via Windows IoT Core Watcher (PC en Pi via netwerkkabel verbonden).


Background-app in Visual Studio 2015
- Nieuw project: Visual C# → Background Application (IoT).
- Debug-instellingen: Rechtermuisknop project → Properties → Debug tab:
- Platform: ARM
- Target Device: Remote Machine
- Remote machine: IP-adres uit IoT Core Watcher
- Uncheck "Use authentication"
- Codeer in
StartupTask.cs. Download mijn code van GitHub of bouw zelf.



Debuggen in Visual Studio
- Breakpoint zetten (klik grijze balk).
- Druk groene "Remote Machine"-knop.
- In debug-modus: knop wordt "Continue", stap-knoppen actief (Next, Step Into, Step Over, Step Out).
- Variabelen inspecteren: muis hover of rechtermuis → "Add Watch".


Web API op Azure maken (voor IoT & mobiele app)
ASP.NET Web Application project
- Nieuw project: ASP.NET Web Application.
- Kies MVC onder ASP.NET 4.5.2 (of ASP.NET 5 preview).
- Authenticatie: No Authentication.
- Optie: "Host in the cloud" → Azure Web App. Gratis proef: $200 gratis tegoed.
- Na OK: Azure-login, Web App naam/locatie invullen.






Database met Entity Framework (Code First)
- NuGet Package Manager Console:
Install-Package EntityFramework. - Modelklasse aanmaken (bijv.
MyThingmet velden: Id, RFID, Name, Type, Location, CreatedAt, LastUpdatedAt). - Controller scaffolden: Rechtermuis Controllers → Add → New Scaffolded Item → Web API 2 Controller with actions, using Entity Framework.
- Data Context klasse aanmaken via +-knop.
- Migraties activeren in Package Manager Console:
Enable-Migrations Add-Migration InitialCreate Update-Database - Database verschijnt in
App_Datamap.








Web API publiceren naar Azure
- Build → Publish → Microsoft Azure Web Apps.
- Login Azure, selecteer bestaande Web App.
- Settings: vink "Use this connection string at runtime" en "Execute Code First Migrations" aan.
- Publish → Visual Studio lanceert de live Web App.






Test REST API met bijv. Chrome-extensie "Advanced REST Client".

Voorbeeld JSON voor POST:
{
"id": 1,
"status": "0",
"rfid": "1009622005390623",
"image": "",
"name": "some tool",
"type": "tool",
"location": "bedroom",
"createdAt": "2015-10-13T10:26:01.14",
"lastUpdatedAt": "2015-10-13T10:26:01.14"
}
Windows Universal App (Client)
Maak een Universal App (Tablet-layout, aanpasbaar voor telefoon/laptop). Vervang code/XAML met mijn GitHub-repo.

Debuggen Universal App
- Lokaal (x64): kies "Local Machine".
- Resultaat: werkende app met zoekinterface.


Push-notificaties (Notification Hub)
- App-naam reserveren: Windows Dev Center.
- Project → Store → Associate App with the Store.
- Notification Hub aanmaken: Azure docs.
- Voeg in
App.xaml.cstoe:private async void InitNotificationsAsync() { var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync(); var hub = new NotificationHub("notification", "Endpoint=sb://...SharedAccessKey=..."); await hub.RegisterNativeAsync(channel.Uri); } protected override void OnLaunched(LaunchActivatedEventArgs e) { InitNotificationsAsync(); // ... } - In
MainPage.xaml.csconstructor:this.NavigationCacheMode = NavigationCacheMode.Required; - In Web API Controller (
MyThingController) na succesvolle POST:public class NotificationClass { internal async Task SendNotificationAsync(string rfid) { var hub = NotificationHubClient.CreateClientFromConnectionString("...", "hubname"); var toast = $@" "; await hub.SendWindowsNativeNotificationAsync(toast); } } // Na create: var notClass = new NotificationClass(); new Thread(async x => await notClass.SendNotificationAsync(myThing.rfid)).Start();New Mything need to update - Toast-notificatie verschijnt → klik → app opent met RFID ingevuld.





Referentielinks
- Windows 10 IoT Core setup
- Visual Studio 2015 setup
- IoT Core op Pi 2
- Blinky sample
- Serial sample
- MS-IoT GitHub
- Windows on GitHub
- Arduino SoftwareSerial
- SparkFun Serial
- Azure Notification Hub
- Mobile Services Push
- Code First Migrations
- Publish to Azure
- Web API + EF
Code
Arduino-code voor RFID-reader
/* Leescommando naar RFID-module, resultaat terug via seriële poort */
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup() {
Serial.begin(9600);
while (!Serial) { ; } // Wacht op Leonardo
mySerial.begin(9600);
}
void loop() {
if (mySerial.available()) {
// Stuur leescommando
byte message[] = {0xA0,0x06,0x80,0x00,0x01,0x02,0x01,0xD6};
mySerial.write(message, sizeof(message));
// Doorsturen naar hardware serial
if (Serial.available()) Serial.write(mySerial.read());
}
}
GitHub Repository
https://github.com/seeyouu87/where-is-my-thing
Aangepaste onderdelen (CAD)
uhf_reader_jt2850.svg– UHF RFID-reader module (3x)
Schema's
Fritzing-schema: Arduino ↔ UHF RFID-module.

Productieproces
- Geïntegreerde QR, RFID en Temperatuurverificatie Toegangscontrolesysteem
- De juiste ontwikkellocatie kiezen: Makerspaces, accelerators en productiepartners
- Oorsprong van het Zaagconcept: Van Oude Gereedschappen Tot Moderne Machines
- FDM 3D-printing vandaag: Huidige stand, mijlpal en toekomstperspectief
- Industry 4.0 Vandaag: Huidig Landschap en 2017 Uitblik
- Waar gecomprimeerde lucht alledaagse processen aandraait
- Microsoft Azure Cheat Sheet 2020 – De Definitieve Gids tot Azure-services & Architectuur
- De Edge Definiëren: Waar Edge Computing Echt Plaatsvindt
- 4 geavanceerde alternatieven voor passieve RFID voor nauwkeurige asset tracking
- Actieve RFID: uitgebreid overzicht & praktische use cases
- Oorsprong van metalen: van sterren tot industrie