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;

FastLED - http://fastled.io/

Bounce2 - http://playground.arduino.cc/Code/Bounce

aREST - http://arest.io

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

Led0=(TestPortcomputergoogle.noTCPport80).openif(Led0 -eq $true ){ Set-ArduinoLed -Server 10.0.0.45 -LedNumber 0 -SimpleColour Green}
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

Momentary switch

5V til 12V step-up converter (Til lys i bryterene)

Arduino UNO

Led String

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)

http://Server/looptest

Kjører lysshow for å teste leds + KULT