INHOUDSOPGAWE:

Art-Net-beheerde lier: 6 stappe
Art-Net-beheerde lier: 6 stappe

Video: Art-Net-beheerde lier: 6 stappe

Video: Art-Net-beheerde lier: 6 stappe
Video: ⚡️ IK GEEF NIET OP! Amazon 2.0 | Online winkel helemaal opnieuw - Deel 3 2024, September
Anonim
Art-Net beheerde lier
Art-Net beheerde lier

Hallo almal, in hierdie instruksies sal ek verduidelik hoe ek my art-net-beheerde lier geskep het. "Jou wat?" Ek hoor jou vra, laat ek baie vinnig verduidelik. 'N Paar jaar gelede het ons 'n partytjie gehou met die plaaslike jeughuis, en as verhoogontwerp het ons die idee gehad om 'n bewegende dak te maak.

Met 9 liere (takels) lig ons 'n reuse -wit lap op en deur die protokol dmx beheer ons dit. Maar destyds het die liere wat ons gebruik het, 3 -fase beheer. Om dit op en af te laat gaan, moes ons 'n relaisstelsel skep wat beheer word deur 'n sentrale Arduino -mega wat deur dmx beheer word. Die relais waar skakelspannings van 230V en 12 ampère is.

Om dit meer verstaanbaar te stel, moes ons 'n reuse gemors drade en relais skep wat eintlik baie onstabiel, onbetroubaar en redelik gevaarlik was.

Ons het dus by onsself gedink daar moet 'n beter manier wees om dit te doen. Ons het begin dink en tot die gevolgtrekking gekom dat die beste manier om dit te doen deur middel van 'n modulêre lierstelsel, wat deur die Art-Net-protokol beheer word, sodat ons slegs 'n spanningsbron en 'n ethernetkabel benodig.

Dit is presies wat ek geskep het, en ek sal vir u probeer verduidelik hoe ek dit gedoen het. Die hele opstelling is afhanklik van 'n framboospi wat die opstelproses beheer. Na sy opstelling gee die beheer oor aan 'n ligte rekenaar (Chamsys, ens.) Wat die liere van daar af sal beheer.

Ek veronderstel dat u basiese kennis van python, arduino en framboos pi aswel het as om iets te verstaan oor die art-net-protokol en beheerders.

Voorrade

Wat jy nodig het:

  • Framboos pi
  • Arduino
  • Arduino Ethernet -skild
  • Arduino motorskerm
  • Enige OLED skerm
  • ethernet kabel
  • ethernet skakelaar
  • DC -motor met encoder gebou op

Stap 1: Stel die Raspberry Pi op

Die manier waarop dit werk, is dat die framboos -pi 'n Apache- en 'n MariaDB -bediener het. Die apache -bediener is die gasheer van die webwerf, die MariaDB moet 'n databasis hou waar ons die data van die liere kan stoor.

Ek sal u nie deur die hele proses van die opstel van die pi met ssh lei nie, as u nie vertroud is nie, hier is 'n goeie handleiding.

Dus, eers sal ons seker maak dat die framboos -pi in u terminale opstelling gereed is:

Om apache te installeer

sudo apt installeer apache2 -y

Om mariaDB te installeer

sudo apt-get install mariadb-bediener

Dit is al die luislanguitbreidings wat ons benodig

pip3 installeer mysql-connector-python

pip3 installeer fles-socketio pip3 installeer fles-kors pip3 installeer gevent pip3 installeer gevent-websocket pip3 installeer netifaces

Vir die oled -skerm het ons 'n bietjie moeiliker opstelproses nodig wat u hier kan vind.

Ok, dit is alles wat klaar is!

Stap 2: Verstaan hoe die opstelling sal werk

Dus, hoe u die lier wil opstel, is deur 'n beginposisie en 'n eindposisie te gee. Dit sal 'n sekere kanaal toegeken word, en met hierdie kanaal kan u slegs tussen die gekose stat en eindposisie beweeg.

Om hierdie posisie te kies, moet u die lier na hulle toe skuif, sodra u daar is, draai u 'n sekere kanaal tot die waarde van 56. As hierdie presiese kanaal die waarde bereik, sal dit weet dat dit sy eind -begin / eindposisie is, as dit op of af moet beweeg, of as dit die artnet -waardes moet verander. Die lier word ook geskuif deur 'n sekere kanaal op 56 te stel. "En hoekom 56" hoor ek jou wonder, ek moes iets kies:).

Die posisie word bereken deur die encoder wat op die GS -motor is.

Stap 3: Backend van die Pi

Agterkant van die Pi
Agterkant van die Pi

Die backend vir die stelsel kan op my github gevind word. Ek het my eie biblioteek vir die art-net-protokol geskryf, so gebruik dit gerus. Ek sal u nie reël vir reël deur alles lei nie, maar ek gee u die idee van alles.

Die kode voer 'n kolfbediener uit wat kommunikeer met die apache -bediener wat op die pi werk. Dit gebruik die flask-socketio-module om data na die voorkant te stuur en te ontvang. Die art-net lib gebruik die socket-module van python om UDP-pakkies van en na die arduino te stuur.

Elke metode wat begin met 'n @socketio.on ('F2B _ ***') wag op 'n F2B -oproep van die voorkant. Sodra dit ontvang is, voer dit die ooreenstemmende aksie uit. Stuur 'n artnet -kommando of kry data van die DB en stuur dit terug na die voorkant.

Die oled_show_info () metode word gebruik om die ip van die ip (beide op die wlan- en ethernet -koppelvlakke) te vertoon.

hardloop dus net die kode met

python3 app.py

Stap 4: Voorkant van die Pi

Voorkant van die Pi
Voorkant van die Pi

Om die voorkant van die pi te kan wysig, moet u eers toegang tot die gids/var/www/html/. Dit is waar apache sy lêers kry om op sy webwerf te vertoon. Om toegang te verkry, voer u uit:

sudo chmod 777/var/www/html/

Nou is dit klaar, kry die kode vir die voorkant van my github en plaas dit in die/var/www/html/gids.

Die voorkant gebruik dieselfde beginsel as die agterkant, maar nou stuur dit die F2B _ *** opdragte as 'n knoppie ingedruk word of die skuifknop beweeg word.

En dit is die voorkant gedoen!

Stap 5: Die Arduino

Die Arduino
Die Arduino
Die Arduino
Die Arduino
Die Arduino
Die Arduino

Om die arduino te gebruik, moet u die ethernetskerm en die motorskerm gebruik. Druk dit net saggies op die arduino. Maak seker dat u nie die motorskerm te ver op die ethernet -skerm druk nie, anders maak u die 2 motorpenne op die ethernetverbinding kort!

Die kode vir die arduino kan ook op my github gevind word. Laai die artnet_winch.ino -lêer op, en alles moet goed wees.

Maak seker dat u die regte penne volgens die korrekte penne van u motor definieer. Die motorkappenne word gekies met die koppenne bo -op die skild. Hierdie penne word gekies onder die // --- motorkonfigurasie. Aswel as die encoder -penne wat aan die regte penne van die arduino gekoppel moet word.

Maak ook seker dat u MAC -adres van die skerm korrek is. Dit kan gevind word op 'n plakker onder die skild en geredigeer in die MAC -veranderlike. Die IP wat u vir die pi gebruik, moet in dieselfde reeks as die PI wees, dit kan normaalweg op die oled -skerm gevind word.

Die kode lyk 'n bietjie, maar dit is nie so moeilik om te verstaan nie. Eintlik lees die ethernetskerm voortdurend udp -pakkies wat binnekom. As die pakkie 'n Artnet -pakket is, dekodeer dit dit en kry die nodige inligting daaruit. Die verskillende artnet-pakkies word mooi beskryf op die Art-Net-webwerf, so as u belangstel, kan u lees wat hulle almal doen.

As dit 'n ArtPoll -pakkie ontvang, reageer dit met 'n ArtPollReply. dit word gebruik in die uitroepfunksie in die agterkant om te bepaal watter toestelle op die netwerk is.

As dit 'n ArtDMX -pakket ontvang, sal dit die pakket dekodeer en die gegewe data gebruik om sekere opdragopdragte uit te voer of die lier in posisie te plaas.

Die move_takel-funksie transformeer die gegewe DMX-waarde (tussen 0-255) na 'n posisie tussen die begin- en eindposisie (0 is die einde en 255 die begin). As die posisie van die encoder nie gelyk is aan die getransformeerde waarde nie, sal die lier op/af beweeg, afhangende van waar u is.

Ek het gewerk aan 'n terugvoerlus tussen die PI en arduino, sodat dit sy posisie kon byhou, maar my arduino het nie meer geheue gehad om die program op te slaan nie:).

Monteer dit alles

Vir die bevestiging daarvan het ek die motor aan 'n metaalhouer vasgemaak en 'n buis daarop geplaas. Heg dan net 'n koord aan die buis vas en gebruik 'n rol band as gewig. Dit is baie basies en u kan baie kreatief word op die manier waarop u dit wil monteer.

Stap 6: Verbind dit alles

Sodra die arduino en die pi klaar is, moet u albei ethernetkabels in u skakelaar aansluit, en dit behoort dit te wees!

U kan dit toets deur na die wlan ip op die oled -skerm te blaai, en u moet die webwerf sien. Druk op soek toestelle om te sien of u die toestel kan vind. As dit niks wys nie, is u arduino nie goed gekoppel nie of is die IP wat u gekies het nie in dieselfde reeks as die van die PI nie.

Sodra u die toestel sien, druk net op setup. In die opstelmenu kan u die lier met die pyltjies skuif en toets of die begin- en eindposisies korrek is met die skuifbalk.

Maak seker dat u beheerder ook by die skerm ingeprop is en dat die IP binne die bereik van die PI en arduino is.

Dis dit!

Aanbeveel: