Odp: Karta przekaźników ATV925, FT232
Plik musi wyglądać tak:
#!/bin/sh
echo 1 > /dev/ttyUSB0I musi miec atrybut "uruchamialny". Jak mimo to nie działa, to serwer nie pozwala na uruchomienie.
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Oprogramowanie / Software → Karta przekaźników ATV925, FT232
Strony Poprzednia 1 2 3 Następna
Zaloguj się lub zarejestruj by napisać odpowiedź
Plik musi wyglądać tak:
#!/bin/sh
echo 1 > /dev/ttyUSB0I musi miec atrybut "uruchamialny". Jak mimo to nie działa, to serwer nie pozwala na uruchomienie.
Działa, dzięki.
Po naciśnięciu przycisku załącz, załączy urządzenie.
Tylko że dostaje komunikat brak strony. Jak to zrobić żeby po naciśnięciu nie próbowało połączyć się ze stroną załącz.sh.
Czy to jest normalny objaw?
Przecież napisałem już. Dopisz w pliku:
#!/bin/sh
echo 1 > /dev/ttyUSB0
echo "Wlaczylem... chyba"Czyli to co ma się pojawić na stronie... albo cały kod nowej strony... albo przekierowanie do tej poprzedniej itp.
Udało się działa wszystko wyśmienicie.
Mam jeszcze jedno pytanie.
Załóżmy że mam program o nazwie "sterownik" do obsługi przekaźnika który przyjmuje komendy sterownik 1 i włącza przekaźnik albo sterownik 0 i wyłącza.
Jak powinno to wyglądać gdy chce umieścić na stronie okno typu edit i tam tylko wpisywać 1 albo 0 potwierdzając klawiszem enter albo button?
bez wpisywania nazwy programu.
Przekazywanie zmiennych z formularza do skryptu. Poczytaj o formularzach html i skryptach sh.
W skrócie:
jeśli masz skrypt: skrypt.sh, a w nim np. napiszesz:
sterownik $1
echo $2to jeśli wywołasz
skrypt.sh argument1 argument2 to skrypt wykona:
sterownik argument1
i zwróci:
argument2
Z formularza można to wysłać tak:
<form action="skrypt.sh?argument1+argument2" method="post">z tym że przekazanie tego do wykonania bez sprawdzenia w skrypcie będzie bardzo nierozsądne.
lukas doszedłeś w końcu do tego jak sprawdzać stan przekaźnika ??
lukas doszedłeś w końcu do tego jak sprawdzać stan przekaźnika ??
Nie. Problem jest w braku odpowiedzi, po kilkudziesięciu zapytaniach odpowie łaskawie i potem już dostaje odpowiedzi cały czas do czasu zamknięcia konsoli. / olać to.
Rozwiązałem to w ten sposób.
echo 03 > /dev/ttyUSB0 && echo "Telefon ON" > /dev/d1 && echo "Antena ON" > /dev/d2;;
echo 14 > /dev/ttyUSB0 && echo "Telefon OFF" > /dev/d1 && echo "Antena OFF" > /dev/d2;;
cat /dev/d1 & sleep 2;;
cat /dev/d2 & sleep 2;;
I do /etc/rc.local
dodałem
echo 03 > /dev/ttyUSB0 && echo "Telefon ON" > /dev/d1 && echo "Antena ON" > /dev/d2
Odpowiednie godziny pracy urządzeń do pliku /etc/crontabs/root
No i każdy ma możliwość włączenia urządzenia lub wyłączenia bezpośrednio ze strony logowania routera wraz z aktualną informacją.
Ok widze że już sobie poradziłeś bo chcialem Ci podpowiedzieć odnośnie formularzy, tak jak opisałem przy "PowerSwitch" obsługę na stronie ale tam jest zwracany stan urządzenia.
Byłbym wdzięczny za gotowca chodzi o pole typu edit do niego wpisujemy 1 klikamy na buton z boku i wysyłamy całą procedurę do konsoli jak np. echo 1 > /dev/ttyUSB0
jeżeli nie musi być koniecznie z ręcznym wpisywaniem to zerknij na to:
plik ze stroną w katalogu /www
np: switch.sh
#!/usr/bin/haserl
<?
echo "Content-type: text/html"
echo ""
?>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
setInterval(function (){
$.get('cgi-bin/stan1.sh',function(data) {
$('#buttona').attr('src',"iconsw/"+data+".png");
$('#buttona').attr('power',data); });},7500);
$('#buttona').click(function(){
var power=$(this).attr('power');
if(power=='on'){
power='off'
}else{
power='on';
}
$.get('cgi-bin/power1.sh',{action:power},function(data) {
$('#buttona').attr('src',"iconsw/"+data+".png");
$('#buttona').attr('power',data);
});
});
});
</script>
</head>
<body>
<img id="buttona" src="<?
status1=$(cat /stan.txt)
echo -n "iconsw/$status1.png"
?>" power="<?
echo -n "$status1"
?>" width="50" height="50" >
</body>
</html>skrypty w katalogu /www/cgi-bin/
power1.sh
#!/usr/bin/haserl
<?
echo "Content-type: text/html"
echo ""
status=$(cat /stan.txt)
if [ "$status" == "on" ] ; then
echo 0 > /dev/ttyUSB0
echo "off" > /stan.txt
else
echo 1 > /dev/ttyUSB0
echo "on" > /stan.txt
fi
status1=$(cat /stan.txt)
echo "$status1"
?>stan1.sh
#!/usr/bin/haserl
<?
echo "Content-type: text/plain"
echo ""
status1=$(cat /stan.txt)
echo "$status1"
?>Tylko do katalogu /www/iconsw wklej dwie ikonki oznaczające stan przełącznika on.png i off.png
Ikonki odświeżają się co 7,5 sek
wszystkie pliki ustaw na chmod 755
jak cos to pisz.
Myślę, że zrobiłem to prościej.
Gotowiec;
<legend class="sectionheader">Sterowanie przekaznikami</legend>
<table>
<tr>
<td><form action="zalacz.sh" method="post"><input class="default_button" type="submit" value="Załącz "><? cat /dev/d1 ?></form></td>
<td><form action="wylacz.sh" method="post"><input class="default_button" type="submit" value="Wyłącz"></form></td>
</tr>
<tr>
<td><form action="zalacz1.sh" method="post"><input class="default_button" type="submit" value="Załącz "><? cat /dev/d2 ?></form></td>
<td><form action="wylacz1.sh" method="post"><input class="default_button" type="submit" value="Wyłącz"></form></td>
</tr>
</table>
</fieldset>
A w plikach zalacz.sh, wylacz.sh itp, itd.
#!/bin/sh
echo 0 > /dev/ttyUSB0 && echo "Telefon ON" > /dev/d1
<?
eval $( gargoyle_session_validator -c "$COOKIE_hash" -e "$COOKIE_exp" -a "$HTTP_USER_AGENT" -i "$REMOTE_ADDR" -r "login.sh" -t $(uci get gargoyle.global.session_timeout) -b "$COOKIE_browser_time" )
gargoyle_header_footer -h -s "system" -p "plugins" -c "internal.css" -j "table.js plugins.js"
?>
Albo
#!/bin/sh
echo 1 > /dev/ttyUSB0 && echo "Telefon OFF" > /dev/d1
<?
eval $( gargoyle_session_validator -c "$COOKIE_hash" -e "$COOKIE_exp" -a "$HTTP_USER_AGENT" -i "$REMOTE_ADDR" -r "login.sh" -t $(uci get gargoyle.global.session_timeout) -b "$COOKIE_browser_time" )
gargoyle_header_footer -h -s "system" -p "plugins" -c "internal.css" -j "table.js plugins.js"
?>
itp, itd.
Koniec.
Proponował bym dodać chociaż odświeżanie co jakiś czas jeżeli bedzie kilku użytkowników bo jeśli jeden zmieni stan to drugi nie bedzie tego widział jak nie przeładuje strony ale to już kwestia potrzeb ![]()
lukas gdzie wrzuciłeś/dopisałeś ten kod? wabikboy, widziałem Twój projekt PowerSwitch który jakby nie było różni się od "treści" i sterowania od tu zamieszczonego, jak byś zrobił tu odświeżenie stanu danego przekaźnika? Bo jak się nie mylę tam całe sterowanie zapewniał pakiet/biblioteka powerswitch...?
Mam mały problem. Zrobiłem uaktualnienie gargoyle-1.5.10.1-ar71xx-tl-wr1043nd-v1-squashfs-sysupgrade.bin
I teraz
root@Gargoyle:~# opkg update
Downloading package list for attitude_adjustment source...
Package list for attitude_adjustment downloaded successfully.
Downloading package list for eko1 source...
Package list for eko1 downloaded successfully.
Downloading package list for gargoylepl source...
Package list for gargoylepl downloaded successfully.
root@Gargoyle:~# opkg install kmod-usb-serial-ftdi
ERROR: Dependency kernel (= 3.3.8-1-d6597ebf6203328d3519ea3c3371a493) of package kmod-usb-serial-ftdi is installed,
but has incompatible version 3.3.8-1-3b70fc7d412617eb97c6bdc7d8fb7844 and is marked as 'hold'
root@Gargoyle:~#
Tu jest rozwiązanie:
http://eko.one.pl/forum/viewtopic.php?id=6042
zrób opkg install opkg
Tak dzięki, działa wszystko.
Witam
Czy koledze lukas udało się znaleźć jakiegoś gotowca na rozwiązanie problemu z postu nr 34?
Dziękuje za odpowiedź
Pytanie kompletnie laickie:
Czy istnieje możliwość przerobienia/podpięcia i ewentualnego sterowania samym modułem dwu przekaźnikowym dedykowanym pod Arduino? http://allegro.pl/show_item.php?item=3525880359
Pewnie można tylko trzeba by wiedzieć jakimi poleceniami się steruje przekaźnik, ale nie widzę czy z drugiej strony jest jakiś scalak, jeśli nie ma to zasada działania pewnie jest taka że jak pojawi się stan wysoki na jednym z pinów IN1 lub IN2 to przełączany jest przekaźnik.
Jak najłatwiej to sprawdzić (przed ewentualnym zakupem)?
Czy istnieje możliwość podpiąć to poprzez USB do Gargulca czy tylko piny (tx, rx i masę) do seriala (ttyS0) w routerze?
Napisać do sprzedawcy ![]()
Już to zrobiłem i czekam na odpowiedz...
Może ktoś miał bądź ma z tym jakieś doświadczenia?
Jak patrzę na schemat to stwierdzam że działa tak jak pisałem, czyli 5v na IN1 lub IN2 i załacza przekaźnik
prosta obsługa jak budowa cepa ![]()
Dobra ale skąd na routerze 5V? Dlatego pytam jak/co/gdzie/czym podłączyć żeby to ruszyło...?
Strony Poprzednia 1 2 3 Następna
Zaloguj się lub zarejestruj by napisać odpowiedź
eko.one.pl → Oprogramowanie / Software → Karta przekaźników ATV925, FT232
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc