NODEMCU LUA ESP8266 Verbinding maken met MySQL-database: 6 stappen
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database: 6 stappen
Anonim
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database
NODEMCU LUA ESP8266 Verbinding maken met MySQL-database

Deze instructable is niet voor angsthazen omdat het XAMPP (Apache, MySQL & PHP), HTML en natuurlijk LUA gebruikt. Als je er zeker van bent om deze aan te pakken, lees dan verder!

Ik gebruik XAMPP omdat het kan worden ingesteld op een pen drive of je harde schijf en het is geconfigureerd om meteen te werken. Er zijn andere WAMP (voor Windows) en LAMP (voor Linux) servers die net zo goed zullen werken en als je echt dapper bent, kun je een server helemaal opnieuw opzetten!

U kunt XAMPP hier downloaden:

TIP: Hernoem index.php en index.html naar iets als index1.php en index1.html zodat je een lijst met programma's in de browser krijgt, in plaats van dat het naar het XAMPP-opstartscherm springt.

Stap 1: XAMPP installeren en uitvoeren

XAMPP installeren en uitvoeren
XAMPP installeren en uitvoeren

Nadat u XAMPP hebt gedownload, volgt u de instructies voor het instellen en wanneer u klaar bent, krijgt u startschermen zoals hierboven. U moet Apache en MySql starten om het LUA-programma te laten werken.

L:\xampp\xampp-control.exe

Wijzig de stationsletter (L:) naar de plaats waar u XAMPP hebt geïnstalleerd.

Stap 2: MySQL

MySQL
MySQL

Als Apache en MySQL actief zijn, start u cmd.exe en typt u

L: en de RETURN-toets - of waar je XAMPP ook hebt geïnstalleerd (L is de stationsletter die is toegewezen aan mijn pen drive, die van jou zal waarschijnlijk anders zijn)

dan

CD xampp\mysql\bin en de RETURN-toets.

Start MySql op door dit achter de DOS-prompt te typen (zoals hierboven).

mysql -u root -p

druk vervolgens op RETURN wanneer om een wachtwoord wordt gevraagd.

Dan kun je de onderstaande scripts gebruiken en zou je zoiets als hierboven moeten zien.

GEBRUIK-test

DROP TABEL INDIEN BESTAAT writeread; CREATE TABLE writeread (logdata datetime, veld varchar(20), waarde bigint(20)); INSERT INTO writeread (logdata, field, value) VALUES ('2017-01-01 06:30:10', '24', '67'); SELECTEER * VAN Writeread;

Ik heb de rootdirectory zonder wachtwoord en de testdatabase gebruikt om mijn tabel te maken. Dit is een standaardconfiguratie voor MySQL zonder ingeschakelde beveiligingsfuncties.

Stap 3: De PHP-bestanden

De PHP-bestanden
De PHP-bestanden
De PHP-bestanden
De PHP-bestanden

Er worden 2 bestanden meegeleverd, 1 om de gegevens naar de databasetabel te schrijven en 1 om deze terug te lezen en in de browser weer te geven.

Om veiligheidsredenen mogen PHP-bestanden niet naar deze site worden geüpload, dus als u reader.txt en writer.txt downloadt, hernoem ze dan naar reader.php en writer.php, en laad ze in de htdocs-map van XAMPP.

Je kunt testen of writer.php werkt door te typen

localhost/writer.php?field=7&value=3

of 127.0.0.1/writer.php?field=7&value=3

in een browser en als alles werkt, zou je een extra vermelding in de databasetabel moeten krijgen.

Het programma reader.php geeft alle rijen van de tabel weer in uw browser. Start dit programma door erop te dubbelklikken in de browser of door te typen

localhost/reader.php

of 127.0.0.1/reader.php

in de adresbalk van de browser.

Stap 4: Het LUA-bestand

Het LUA-bestand
Het LUA-bestand
Het LUA-bestand
Het LUA-bestand

Het bestand jlwriter.lua moet op de ESP8266 staan. Ik heb het op een WeMos-versie gebruikt, maar er is geen reden waarom het niet zou werken op een ESP8266.

Als je nog steeds bij me bent en alles heeft gewerkt, zou je een scherm moeten zien zoals hierboven.

TIP: Als u MySQL gebruikt, hoeft u op F3 te drukken om het hele script opnieuw in te typen.

Verander in het LUA-programma (regel 29) naar het IP-adres van wat uw pc ook gebruikt om verbinding te maken met uw router of modem.

conn:connect(80, '192.168.0.10')

Typ ipconfig in de opdrachtprompt (cmd.exe) om uw IP-adres te vinden.

Stap 5: Code bewerken

Code bewerken
Code bewerken

Ik vind dat een goede code-editor Notepad ++ is, die hier kan worden gedownload

notepad-plus-plus.org/

Het kan worden gebruikt met veel verschillende programmeertalen of scripts en het is gratis.

Ik heb setup.txt toegevoegd om je MySQL-tabel in te stellen als je PHP wilt gebruiken om dit te doen in plaats van de bovenstaande methode.

Nogmaals, u moet de bestandsnaam wijzigen in setup.php en deze vervolgens naar de map htdocs kopiëren.

Houd er rekening mee dat het uitvoeren van dit bestand alle eerdere tabellen en gegevens zal wissen.

Stap 6: Conclusie

Dit was een nogal gecompliceerde instructable, maar ik heb het uiteindelijk aan het werk gekregen. Op het web zijn er een paar programma's die hierop lijken, maar ze zijn geschreven voor een DHT22-sensor. Nadat ik deze programma's met beperkt succes had geprobeerd, besloot ik alles te verzamelen wat ik kon vinden over MySQL geschreven in LUA en helemaal opnieuw te beginnen. Na veel vallen en opstaan kwam ik op dit uit. Ik heb in het verleden Apache, MySQL, PHP en HTML gebruikt, dus ik begreep hoe die kant werkt.

Deze programma's krassen slechts het oppervlak van wat u kunt doen wanneer u bent verbonden met een MySQL-database. Hiermee kunt u gegevens verzamelen en op uw eigen pc opslaan in plaats van op een onbekende server. Ik hoop dat er hier genoeg is om u een voorproefje te geven van wat er gedaan kan worden met deze krachtige combinatie van programma's.

Aanbevolen: