Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.04.2015, 17:47   #21
melsem
Moderator
 
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 599
melsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud of
По умолчанию Re: CGI как провести опрос ардуины?

Весь html с таблицей покажи.
melsem вне форума   Ответить с цитированием
Старый 19.04.2015, 18:32   #22
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CGI как провести опрос ардуины?

PHP код:
echo '
<table border="1" width="100%" id="table1" height="100%" bgcolor="#0000FF" bordercolorlight="#CCCCCC">
    <tr>
        <td height="34" bgcolor="#0059B2" align="center"><b>
        <font color="#FFFFFF" size="5">Температура ТА</font></b></td>
        <td height="34" bgcolor="#0059B2" align="center"><b>
        <font color="#FFFFFF" size="5">Температура Котел</font></b></td>
        <td height="34" bgcolor="#0059B2" align="center"><b>
        <font color="#FFFFFF" size="5">Температура Вход Котел</font></b></td>
    </tr>
    <tr>
        <td bgcolor="#393939" height="40%" align="center"><b><font style="font-size:75px;" color="#FFFFFF">'
.$data4.'</font></td>
        <td height="40%" bgcolor="#393939" align="center"><b><font style="font-size:75px;" color="#FFFFFF">'
.$data0.'</font></td>
        <td height="40%" bgcolor="#393939" align="center"><b><font style="font-size:75px;" color="#FFFFFF">'
.$data1.'</font></b></td>
    </tr>
    <tr>
        <td height="27" bgcolor="#0059B2" align="center"><b>
        <font color="#FFFFFF" size="5">Температура под в Дом</font></b></td>
        <td height="27" bgcolor="#0059B2" align="center"><b>
        <font color="#FFFFFF" size="5">Температура на Улице</font></b></td>
        <td height="27" bgcolor="#0059B2" align="center"><b>
        <font color="#FFFFFF" size="5">Состояние насоса</font></b></td>
    </tr>
    <tr>
        <td bgcolor="#393939" height="40%" align="center"><b><font style="font-size:75px;" color="#FFFFFF">'
.$data3.'</font></td>
        <td bgcolor="#393939" height="40%" align="center"><font style="font-size:65px;" color="#FFFFFF"><b id="txt"></b></font></b></td>
        <td bgcolor="#393939" height="40%" align="center">
        <a href=/termo/rele.php?data='
.$url.' >'.$nasos.'</a></td>
    </tr>
</table>

'


Последний раз редактировалось avgaz; 19.04.2015 в 21:20.
avgaz вне форума   Ответить с цитированием
Старый 19.04.2015, 22:01   #23
melsem
Moderator
 
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 599
melsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud of
По умолчанию Re: CGI как провести опрос ардуины?

Если эта команда у тебя точно отрабатывает:
PHP код:
head -n 1 /dev/ttyUSB0 awk -","  '{print $1,$6,$4}' 
Я пока не подключал arduino к роутеру. Проверить не могу.

Тогда можно так.
Вот переписал пример с твоего кода для /www/cgi-bin/modules/termo/index.cgi Твой скрипт не запустился.
PHP код:
#!/bin/sh
echo "Content-type: text/html; charset=utf-8"
echo ""
echo `cat /www/menu.html`


echo 
"<head> 
<title>Температура ТА</title> 
</head>  


<table border="
1" width="100%" id="table1" height="30%" bgcolor="#0000FF" bordercolorlight="#CCCCCC"> 
    
<tr>
    <
td height="34" bgcolor="#0059B2" align="center"><b><font color="#FFFFFF" size="5">Температура ТА</font></b></td
        <
td height="34" bgcolor="#0059B2" align="center"><b><font color="#FFFFFF" size="5">Температура Котел</font></b></td
        <
td height="34" bgcolor="#0059B2" align="center"><b><font color="#FFFFFF" size="5">Температура Вход Котел</font></b></td
    </
tr
    <
tr>
    <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $1}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $2}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $3}'
        echo "
&deg;C</font></b></td
    </
tr
</
table

<
br>

<
table border="1" width="100%" id="table1" height="30%" bgcolor="#0000FF" bordercolorlight="#CCCCCC"
    <
tr
        <
td height="34" bgcolor="#0059B2" align="center"><b><font color="#FFFFFF" size="5">Температура под в Дом</font></b></td
        <
td height="34" bgcolor="#0059B2" align="center"><b><font color="#FFFFFF" size="5">Температура на Улице</font></b></td
        <
td height="34" bgcolor="#0059B2" align="center"><b><font color="#FFFFFF" size="5">Состояние насоса</font></b></td
    </
tr

    <
tr
    <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $4}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $5}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">- "
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $6}'
        echo " 
-</font></b></td
    </
tr

</
table
<
meta http-equiv="refresh" content="10">

Или считать в файл, а с него в скрипт.

Вид будет такой:
Миниатюры
Нажмите на изображение для увеличения
Название: tt.jpg
Просмотров: 147
Размер:	115.3 Кб
ID:	2481  

Последний раз редактировалось melsem; 19.04.2015 в 22:42.
melsem вне форума   Ответить с цитированием
Старый 20.04.2015, 01:05   #24
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CGI как провести опрос ардуины?

Цитата:
Сообщение от melsem Посмотреть сообщение
Если эта команда у тебя точно отрабатывает:
PHP код:
head -n 1 /dev/ttyUSB0 awk -","  '{print $1,$6,$4}' 
Я пока не подключал arduino к роутеру. Проверить не могу.
Эта команда работает только один раз совместно с запросом
то есть к примеру так.
PHP код:
#!/bin/sh
#Copyright (C) 2013 cyberwrt.ru, duino.ru, cyber-place.ru, mp3car.ru
echo "Content-type: text/html; charset=utf-8"
echo
echo 
"<title>Тест</title>"
echo > /dev/ttyUSB0
echo `head -n 1 /dev/ttyUSB0 | awk -F "," '{print $1,$6,$4}'
Если добавить ещё чтение то есть так
PHP код:
#!/bin/sh
#Copyright (C) 2013 cyberwrt.ru, duino.ru, cyber-place.ru, mp3car.ru
echo "Content-type: text/html; charset=utf-8"
echo
echo 
"<title>Тест</title>"
echo > /dev/ttyUSB0
echo `head -n 1 /dev/ttyUSB0 | awk -F "," '{print $1,$6,$4}'`
echo `
head -n 1 /dev/ttyUSB0 | awk -F "," '{print $3}'
То уже не работает
нужно наверно ещё раз выполнять запрос echo 3 > /dev/ttyUSB0
ну не будешь же 6 раз это делать
вот думал может можно как то полученные значения передать в переменные и вынести из запроса уже в html часть?
avgaz вне форума   Ответить с цитированием
Старый 20.04.2015, 06:13   #25
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1310
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию Re: CGI как провести опрос ардуины?

Цитата:
полученные значения передать в переменные
Полученые значения у Вас уже в переменных... $1, $6, $4

Последний раз редактировалось stD; 20.04.2015 в 06:22.
stD вне форума   Ответить с цитированием
Старый 20.04.2015, 07:38   #26
melsem
Moderator
 
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 599
melsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud of
По умолчанию Re: CGI как провести опрос ардуины?

Впиши перед каждой строкой с
PHP код:
head -n 1 /dev/ttyUSB0 awk -","  '{print $1}' 
запрос
PHP код:
echo > /dev/ttyUSB0 
и все.

Вот одна часть скрипта.
PHP код:
   <td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
echo 3 > /dev/ttyUSB0
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $1}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
echo 3 > /dev/ttyUSB0
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $2}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
echo 3 > /dev/ttyUSB0
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $3}'
        echo "
&deg;C</font></b></td
Или в запросе число 3 это третья переменая? или три переменных будет в ответе?
Что число 3 значит в echo 3 > /dev/ttyUSB0 ??

Последний раз редактировалось melsem; 20.04.2015 в 07:51.
melsem вне форума   Ответить с цитированием
Старый 20.04.2015, 12:20   #27
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CGI как провести опрос ардуины?

Цитата:
Сообщение от mebitek Посмотреть сообщение
Полученые значения у Вас уже в переменных... $1, $6, $4
Дак они за пределами этого запроса уже не работают.

Цитата:
Сообщение от melsem Посмотреть сообщение
Впиши перед каждой строкой с
PHP код:
head -n 1 /dev/ttyUSB0 awk -","  '{print $1}' 
запрос
PHP код:
echo > /dev/ttyUSB0 
и все.

Вот одна часть скрипта.
PHP код:
   <td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
echo 3 > /dev/ttyUSB0
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $1}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
echo 3 > /dev/ttyUSB0
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $2}'
        echo "
&deg;C</font></b></td

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">"
echo 3 > /dev/ttyUSB0
        head -n 1 /dev/ttyUSB0 | awk -F "
,"  '{print $3}'
        echo "
&deg;C</font></b></td
Или в запросе число 3 это третья переменая? или три переменных будет в ответе?
Что число 3 значит в echo 3 > /dev/ttyUSB0 ??
echo 3 > /dev/ttyUSB0 это отправка на ардуину что бы она послала ответ.
и каждый раз это выполнять это очень долго будет. не как нельзя вынести переменные $1,$4,$6 за пределы запроса head -n 1 /dev/ttyUSB0 | awk -F "," '{print $1,$4,$6}'?

Последний раз редактировалось avgaz; 20.04.2015 в 12:25.
avgaz вне форума   Ответить с цитированием
Старый 20.04.2015, 14:06   #28
melsem
Moderator
 
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 599
melsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud of
По умолчанию Re: CGI как провести опрос ардуины?

Дай эти команды в терминале
PHP код:
echo > /dev/ttyUSB0
head 
-n 1 /dev/ttyUSB0 > /var/arduino 
и покажи здесь что будет в файле /var/arduino , что бы для Awk или sed написать.

Запишет в фаил один раз а с файла уже куда что надо. И так по кругу.

Хотя так должно работать
PHP код:
   <td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">
        head -n 1 /var/arduino | awk -F "
," '{print $1}' 
        echo "
&deg;C</font></b></td>  

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">
        head -n 1 /var/arduino | awk -F "
," '{print $2}' 
        echo "
&deg;C</font></b></td>  

        <
td height="34" bgcolor="#393939" align="center"><b><font color="#FFFFFF" size="30">
        head -n 1 /var/arduino | awk -F "
," '{print $3}' 
        echo "
&deg;C</font></b></td
и так далее.

Последний раз редактировалось melsem; 20.04.2015 в 14:20.
melsem вне форума   Ответить с цитированием
Старый 20.04.2015, 14:14   #29
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CGI как провести опрос ардуины?

Цитата:
Сообщение от melsem Посмотреть сообщение
Дай эти команды в терминале
PHP код:
echo > /dev/ttyUSB0
head 
-n 1 /dev/ttyUSB0 > /var/arduino 
и покажи здесь что будет в файле /var/arduino , что бы для Awk или sed написать.

Запишет в фаил один раз а с файла уже куда что надо. И так по кругу.
такая же строка что отдает ttyUSB0
то есть 23.50,13.00,-127.00,44.25,47.50,-127.00,0,0,0
только папки var нет файл создался в tmp
avgaz вне форума   Ответить с цитированием
Старый 20.04.2015, 14:24   #30
melsem
Moderator
 
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 599
melsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud of
По умолчанию Re: CGI как провести опрос ардуины?

Ответ выше, дописал.
Каталог /var это ссылка на /tmp.
И это находится все на ОЗУ, после перезагрузки не сохраняется и перезаписывай сколько угодно.
melsem вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 12:31. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика