sterowanie pecetem ( linux ) dlugie

Feb 18, 2004 13 Replies

witam



mam taki problem ...



chcialbym zrobic sobie urzadzonko ( choc to moze za mocno powiedziane, tzn raczej chodzi o schemat jak podlaczyc do peceta np do portu usb,szeregowego lub rownoleglego ) ktore ... hmm jak to nazwac moze inaczej bo sie zamotam i mnie nie zrozumiecie



system alarmowy, wlamanie czyli "wyje syrena" ( mamy wtedy 12v z syreny) chce aby linux wyslal mi ( sms, ale narazie moze maila bo to pewnie bedzie prosciej i bez wiekszych kombinacji)



wiec wymyslilem ze te 12v z syreny mozna dac na zasilanie przekaznika ktory w momencie "wycia" robi zwarcie no i tym zwarciem wlasnie sterowac jakim portem



uff...



moje pytanka - jesli mozna



1) czy cos takiego jest mozliwe w takiej formie jak napisalem?
2) czy sa gdzie gotowe podobne rozwiazania ( ja niestety nic nie znalazlem, moze dlatego ze zle formuluje zapytania )? jezeli nie to czy moge prosic o pomoc w wykonaniu tego "projektu"?

oczywiscie to tylko poczatek jesli to nie bedzie tak skomplikowane i bedzie podania mozliwosc kolejnych danych to chcialbym ten projekt rozbudowac do np czegos takiego:



(tresc maila)



  1. brak pradu
  2. powrot zasilania
  3. wlamanie
  4. czuwanie
  5. wylaczony

bardzo prosze o pomoc wykonanie tego projektu bedzie mi bardzo pomocne



pozdrawiam darek



(ciach)

prosto (W miare) proponuje zrobic to tak:

pecet z linuxem (prawie kazdym) posiada mozliwosc obslugi portow COM (cua0/ttSy0 zaleznie od nr kernela), i mozna odpalic agetty na takim porcie - bedzie tam sobie sluchala kolejna konsola. nie pytaj mnie jak to zrobic- jak chcesz robic pod linuxem to uzywaj google ;)

do tego zrobienie ukladu z procesorkiem np 89c2051 atmela (rodzina '51, np proste programowanie w bascomie ktory ma troche fajnych biblotek gotowych, albo odrazu w ASM) procesorek ma obsluge sprzetowa transmisji szeregowej - wiec wystarczy dolorzyc max232 (konwersja 5/12V na rs232) i procesor gada sobie z pc. w linuxie tworzysz usera "alarm" z haslem odpowiednim do 2051 piszesz programik odpowiedni - ktory wysyla na port COM na dziendobry (W odpowiedzi na username:) alarm oraz po chwili ustalone haslo. a potem w zaleznosci od stanu jego nozek (podlaczasz co tam potrzeba do nozek scalaczka, ma ich do wykorzystania dosc duzo) - programik w 2051 wysyla ciagi znakow "./alarm+enter" albo "./prad+enter" itp -enter to znaczy kod konca lini (nie wiem czy CR czy CR+LF ?) - czyli symuluje wpisanie "./alarm" i nacisniecie entera = odpalenie skryptu alarm

a w linuxie robisz sobie wykonywalne skrypty "alarm" "prad" itp - w ktore sobie wpisujesz juz caly ich sens i logike - wyslanie sms, maila, znakow dymnych, shutdown systemu czy cotam zechcesz...

ja sobie zrobilem odwrotne urzadzenie - logi sa wysylane do cua1, na ktorym slucha 2051 z LCD znakowym, i wyswietla mi na obudowie serwera ostatnie 8 lini logow...

On Behalf Of darek_sin

Przekaźnik zwierający styki jest OK. Teraz poćwicz wykrywanie w linuksie dostępności drukarki, albo w RS232C linnii DCE.

pzdr Artur

tak - to nawet nie jest chyba tak trudne , tylko czy to nie wymaga uprawnien roota aby dostac sie do fizycznych portow ? ale nawet w tym przypadku nie ma problemu.

Linux IO Programming

Napisz cos wiecej :) Pozdrawiam, U

tak, wiecej :) moze na jakiejs WWW jest projekt ?

jakie logi wyswietlasz ? chyba nie wszystkie ? moze te wazniejsze ? ATACKALLERT ;-)

od tego są prawa dostępu do urządzeń. jeśli root da 666 na /dev/ttyS0 albo /dev/parport0, to każdy może sobie z nich korzystać.

w.

ale nie chodzilo mi o prawa do pliku tylko o funkcje "ioperm()" wymaga roota :) mozna program suidowac, ale nie znam sie na tym :(

(...) The ioperm() call requires your program to have root privileges; thus you need to either run it as the root user, or make it setuid root. (...)

hmm, chyba cos namieszalem, myslalem o dostepie do LPT poprzez outb() a tu o plikach, hmmmm, sorki

U¿ytkownik "darek_sin" <darek_sin@bes_spuma_czat.onet.pl> napisa³ w wiadomo¶ci news:c105pt$d9f$ snipped-for-privacy@news.onet.pl...

eh ... zastosuj uklad z myszki podlaczonej do com1 , mozesz ja zastosowac programowo, prawy przycisk gdy zostanie nacisniety wysyla ci sms'a czy meila a lewy np: wlaca jakis ukld z syrena i juz.

>

wiecej pisac o szczegolach chyba niema sensu. jak ktos wie oco chodzi, to sam jest w stanie zrobic:

-atmel 89c2051, soft napisalem w bascomie

-max232 do portu rs232

-wyswietlacz 8x25lini lcd znakowy na czipie (prawie) zgodnym z typowym HD44...

-zasilanie z wtyku hdd (elektronika 5v, wyswietlacz potrzebowal 12V do reg kontrastu) i to wszystko od strony hardware... Reszta to soft, ktory zalezy od konkretnego hardware, wiec niema sensu sie w niego wdawac

poniewaz uzywam topornego linuxa (jadro 2.0.39) w wersji routerowej, to niewiele jest tam do logowania. Wyswietla wszystko co leci do /var/log/messages, przewaznie to jakies smieci w stylu "dhcpd nadal adres... " "kernel ip-fw odrzucil costam..." (nie dodaje daty i czasu zeby w 25 kolumnach sie miescic)

Zeby dostac sie do portu szeregowego nie trzeba mieszac po portach. Mozesz odwolywac sie przez urzadzenie parport i dowolnie ustawiac stan poszczegolnych linii. Zerknij sobie na

formatting link
to o tyle wygodne ze w programie nie musisz nic wiedziec o realizacji sprzetowej i nie potrzebujesz uprawnien roota.

pzdr. j.

niestety musze powiedziec ze to co piszecie o tych portach to dla mnie czarna magia ... to z myszka jest dla mnie najprostsze ... lecz chyba nie takie idealne ...

a czy moze ktos z was chcialby mi cos takiego wykonac na zlecenie?

dziekuje za zainteresowanie

pozdrawiam darek

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required