Arduino Controlpanel med server interface
#Github link: https://github.com/autopkg/dataJAR-recipes
Arduino Konfig
Arduino probrammet er vedlagt HER
Følgende ekstra biblioteker er brukt;
Bounce2 - http://playground.arduino.cc/Code/Bounce
Windows server konfigEdit
Oppsett er gjort i windows server 2012R2, men bør fungere i alle versjoner som har powershell v4+
Konfig er avhengig av et sett med powershell moduler og skript.
ArduinoREST
Moduler for kommunikasjon med Arduino
Last ned Modulen må plasseres i `C:\Windows\System32\WindowsPowerShell\v1.0\Modules\ArduinoREST\
Hvis mappen ArduinoREST ikke finnes må den opprettes.
Modulen er dokumenter med tilhørende eksempler i Get-Help funksjonen.
HttpListener
HTTP tjeneste som venter på input fra Arduino til server.
Modifisert versjon av http://blogs.msdn.com/b/powershell/archive/2014/12/19/10561247.aspx
Last ned her Modulen må plasseres i C:\Windows\System32\WindowsPowerShell\v1.0\Modules\
Start tjenesten med dette fra en powershell prompt som er kjørt som administrator
Start-HttpListener -Auth Anonymous
Standard port her er 8888
Eksempel på URL kommando Get-Process,
http://SERVERNAVN:8888/?command=Get-Process&format=text
&format=text er valgfri, kan også formateres som json, xml,clixml
Legges i startup på serveren som en schedueld task, HTTPlistener.xml kan importeres i task schedueler
For at knappene skal kunne utføre handlinger, lag en fil som heter button0.ps1, button1.ps1 etc. for hver av knappene som inneholder kommandoer for hva som skal skje når knappene trykkes.
Filene plasseres i samme mappen som er target for powershell session som kjører httplistener, default; c:\users\administrator\
Test-Port
Powershell modul for å gjøre porttester
Last ned
Eksempel på check
else
Lag et skript med en kopi av denne seksjonen til hver host du vil sjekke og led du vil styre i en .ps1 fil.
Lag en schedueld task i windows og sett interval for hvor ofte du vil sjekke.
Hardware
5V til 12V step-up converter (Til lys i bryterene)
Arduino UNO
Arduino Rest API
Api er basert på http://arest.io
Noen spesial tilpassede funkstoner finnes,
http://server/LightsToggle?params=X
X her kan byttes ut med en int
- 1 betyr skru av leds
- 0 betyr skru på leds
- alt annet betyr TOGGLE state
http://Server/SetLeds?params=$LedNumber,$RedValue,$GreenValue,$BlueValue,
Bytt ut dollarverdien med int (0-255) som representerer Led nummeret og ønsket fargenivå.
OBS! komma (,) på slutten må være med (ubrukt for nå, debug switch)
Kjører lysshow for å teste leds + KULT