Возникла идея поуправлять устройствами Z-wave из Linux.
Не используя специального ПО.
Макет управления прост:
Компьютер+USB-PC(ZCU201) и регулятор яркости.
Для этого потребовались USB-PC устройство из ассортимента магазина
http://www.z-waver.ru/shop?page=shop.product_details&flypage=flypage.tpl&product_id=17&category_id=13 и прибор регулирования яркости
http://www.z-waver.ru/shop?page=shop.product_details&flypage=flypage.tpl&product_id=6&category_id=14.
Загружаем любой Linux со свежим ядром, в котором есть spcp8x5 драйвер (spcp8x5 USB to serial adaptor driver). Я пользуюсь OpenSUSE 11.1. Загружаемся, вставляем устройство ZCU201. Заходим в консоль, выполняем:
#>lsmod | grep spcp8x5
Если в выводе есть этот драйвер, значит он загрузился.
На приборе должна гореть зеленая лампочка.
Подключаем устройство регулирования яркости в розетку, лампочка на устройстве должна мигать красно-зеленым цветом, означая, что устройство не входит пока что не в одну сеть Z-wave. Если она так не мигает, то её необходимо исключить из других сетей(см. документацию к контроллеру). Я воткнул обычную настольную лампу в розетку устройства, чтобы наглядно понаблюдать за процессом регулирования яркости.
Переходим к компьютеру и скачиваем прикрепленный к теме файл(z-waver.pl) в директорию /tmp .
z-waver.pl - это пример программы по управлению устройствами Z-wave, написанный на языке Perl.
Для работы этой программы требуется установленный модуль perl Device::SerialPort
Установка модуля простая(предполагается, что на компьтере уже настроен интернет), можно идти двумя путями:
1. Скачать модуль в директорию /tmp
#>cd /tmp
#>wget
http://search.cpan.org/CPAN/authors/id/C/CO/COOK/Device-SerialPort-1.04.tar.gz
#>tar zxvf Device-SerialPort-1.04.tar.gz
#> cd Device-SerialPort
#> perl Makefile.PL
#> make
#> sudo make install
2. Воспользоваться cpan.
#> cpan -i Device::SerialPort
После установки модуля программа z-waver.pl готова к работе.
#> cd /tmp
Добавляем устройство в сеть:
#> sudo ./z-waver.pl add
Программа переходит в режим ожидания устройства.
На регуляторе яркости нажимаем 3 раза кнопку.
После этого устройство будет добавлено в сеть, лампочка на регуляторе перестанет мигать и будет гореть желтым цветом, если это не произошло необходимо повторить шаг.
Программа сообщит какой номер устройства присвоен регулятору, далее для управления будет использоваться этот номер.
Если это первое устройство в вашей сети, то номер будет 1.
Теперь попробуйте включить регулятор на полную мощность:
#> sudo ./z-waver.pl switch 1 on
Выключить:
#> sudo ./z-waver.pl switch 1 off
Установить яркость на 20%:
#> sudo ./z-waver.pl dim 1 20
Наигравшись с яркостью, можно написать простой скрипт по медленному увелечению яркости c 1% до 99%:
#> for i in `seq 1 99`; do sudo /tmp/z-waver.pl 1 $i ;done
Далее можно поставить расписание на включение или выключение устройств.
(см. man 5 crontab)
Надеюсь, что мой опыт будет полезен кому-нибудь. [file name=z_waver.zip size=2308]
http://www.z-waver.ru/media/kunena/attachments/legacy/files/z_waver.zip[/file]