DIN 1010

SmartHouse, domácí automatizace a telemetrie, tam všude se uplatní nový modul DIN 1010. Nabízí ovládání deseti vstupů a deseti výstupů, mechanické vypínače a široce používané 12V napájení. Na vstupy je možné připojit tlačítka, vypínače, senzory, spínače apod. Výstupy lze použít např. ke spínání relé, a ovládat tak výkonové periferie jako osvětlení, zásuvky, nebo motory.

DIN 1010 umožňuje ovládání deseti 12V/400mA výstupů a vyhodnocování deseti digitálních vstupů. Zapojuje se pomocí čtyř vodičů – dva pro CAN komunikaci a dva pro 12V napájení – do topologe ring, mesh, star, line, tree, nebo bus. Komunikaci s Raspberry Pi zajišťuje převodník RxTx / CAN.

idhddhge

Schéma zapojení ke stažení

Dostupnost a možnost objednání DIN 1010 naleznete na allcomp.cz.

Instalace

Instalace knihovny libgcj13:

sudo apt-get install libgcj13

Zakázání seriové linky pomocí nástroje raspi-config:

sudo raspi-config

8 Advanced Options –> A8 Serial –> No –> OK –> Finish –> Yes (Reboot)

Stažení aktuálního programu AllNet13 pro komunikaci mezi Raspberry Pi a DIN 1010:

wget http://home.allcomp.cz/pub/raspberry/AllNet13

Nastavení práv pro spuštění:

chmod 755 AllNet13

Spuštění programu AllNet13:

./AllNet13

Programování

Pro vlastní programování je připravena knihovna netlib.jar.

Příklad jednoduchého programu v prostředí NetBeans – nastavení digitálního výstupu na true a při změně vstupu na jednotce výpis do terminálu:

package JavaApplication;

import cz.allcomp.netlib.NetBridge;
import java.util.HashMap;

import cz.allcomp.shs.allcomplib.transducers.EwcNonExist;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Program extends NetBridge {

    public static void main(String[] args) {
        Program program = new Program("127.0.0.1", 1050); //Vytvoření instance Bridge, parametry: String (ip adresa Net Serveru), int (port Net Serveru)
        program.getActiveEwcs().add(1); //Nastavení aktivních EWC jednotek
        program.createBridge(); //Propojení s Net Serverem (provádí se po nastavení aktivních EWC jednotek)
        
        short ewc = 1; //Proměnná obsahující ID EWC jednotky
        short io = 0; //Proměnná obsahující ID výstupu na EWC jednotce
        
        try {
            program.setDigital(ewc, io, true); //Nastaví digitální hodnotu výstupu na zapnuto (true, popř. vypnuto - false)
        } catch (EwcNonExist e) {
            e.printStackTrace();
        }
                
                while(true) { //nekonečná smyčka držící program spuštěný
                    try {
                        Thread.sleep(500);
                    } catch (InterruptedException ex) {
                        Logger.getLogger(Program.class.getName()).log(Level.SEVERE, null, ex);
                    }
                }
    }

    public Program(String netIp, int netPort) {
        super(netIp, netPort);
    }

    @Override
    public void onDigitalChange(short ewc, HashMap<Integer, Short> ewcStates) {
                System.out.println("Zmena stavu IO na EWC (" + ewc + ") " + ewcStates.toString());
    }

}

Celý ukázkový projekt ke stažení: 1_JavaApplication_NetBeans.zip

Příklad web aplikace projektu SmartHouse Allcomp a.s.: vejmineksnu.cz

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *