Tehostepalvelimen tarkoitus on siis tarjota Instanssin kävijöille ohjelmointirajapinta partysalin valaistukseen ja mahdollisesti muihin salissa olevien tehosteiden hallintaan. Salin valaistuksena tulee toimimaan useita kymmeniä ledeillä toimivia RGB lamppuja.
Tehostepalvelimen rajapinta valoihin on yksinkertainen UDP-protokolla. Sen suunnittelussa on erityisesti pyritty ottamaan huomioon ohjelmoitavuuden yksinkertaisuus liikaa kuitenkaan rajoittamatta laajennettavuutta. Valojen ohjaukseen ei siis tarvita mitään kirjastoja vaan mikä tahansa ohjelmointikieli käy josta voidaan lähettää UDP-paketteja.
Tehostepalvelimen UDP-paketissa ensimmäinen tavu kuvaa aina speksin versiota, joka on tällä hetkellä aina numero yksi. Tämän jälkeen pakettiin voidaan liittää yksi tai useampi tehostekomento.
Tehostekomennon tavut menevät valoille seuraavasti
- Tehosteen tyyppi. Valoille tämä aina yksi
- Valon indeksi
- Valon tyyppi. Nolla RGB valoille
- Valon RED arvo 0-255
- Valon GREEN arvo 0-255
- Valon BLUE arvo 0-255
Eli paketti ensimmäisen valon muuttamiseksi punaiseksi ja toisen siniseksi olisi seuraavanlainen
Tämä muuntuu koodiksi Python-ohjelmointikielellä seuraavasti
Konstruktorilla valojen simulaattori löytyy osoitteesta http://192.168.1.145:8080/
Ei kommentteja:
Lähetä kommentti