Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2006-06-01 14:27:09

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Sterownik urządzeń elektrycznych

no jest dość ciekawa zabawka tylko jak czymś takim sterować pod linuxem bawił się ktoś w coś takiego kiedyś
jeśli macie jakieś chcematy do budowy i programy do obsługi to bardzo prosze

ps. szukałem na elektrodzie ale nie znalazłem nic konkretnego

Offline

 

#2  2006-06-01 14:32:59

  guzzi - Członek DUG

guzzi
Członek DUG
Skąd: Asteroida Linux
Zarejestrowany: 2005-03-31

Re: Sterownik urządzeń elektrycznych

Tylko zastanawiam sięo jakie urządzenia elektryczne ci chodzi - pralka :)?

Offline

 

#3  2006-06-01 14:42:28

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

hehe no bez przesady to wystarczy że będzie właczało/wyłaczało te użądzenia i to nie musi być układ wytrzymujący jakieś ogromne obciążenia (najwyżej będe mątował przekaźniki :P)

Offline

 

#4  2006-06-01 16:19:36

  Kowall_ptk - wieczny student

Kowall_ptk
wieczny student
Skąd: z nienacka :)
Zarejestrowany: 2005-02-17

Re: Sterownik urządzeń elektrycznych

Jeżeli są programy do obsługi wyświetlaczy alfanumerycznych lcd, to muszą istnieć też do obsługi prostych urządzeń. Tyle tylko, że ja takich programów nie znam :(


W Linuksie się da, tylko trzeba wiedzieć jak!

Offline

 

#5  2006-06-01 17:16:55

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

tutaj masz fajny opis jak zrobić coś o co Ci chodzi
http://sad.selfip.net/index.php?id=5&article=2

ja akurat to rozbudowałem 1 demultiplekserem i 15 przerzutnikami typu D
mam przylepione do monitora i sobie miga na różne zdarzenia w kompia robiąć na 15 LED`ach rózne animacje ;)
"wyjście" na LPT masz na bitach 2-9 wiec masz 8 bitów to pełnej zabawy :)
dokładajac jak ja demultiplekser i takie tam to wiesz to juz możesz to rozbudowywać ze HO HO (tzn. tak całkiem powaznie to na 8 bitach i na takich w miare prosto to na 28 urządzeń się spokojnie zrobi włącz / wyłącz)

miłej zabawy :)

aaa to tylko umie "puścić logiczne 1" na kabelek
obowiazkowo co najwyzej otwieraj bym tarnzystor którym dalej ruszysz przekaźnik - bo jak przehcolujesz to zdjarasz LPTa ;)

Offline

 

#6  2006-06-01 18:43:51

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

he nie myślałemże to trudnijesze ten program wydaje się tylko zbty prosty podejżewam że to trzeba coś dopisac do niego



ja akurat to rozbudowałem 1 demultiplekserem i 15 przerzutnikami typu D
mam przylepione do monitora i sobie miga na różne zdarzenia w kompia robiąć na 15 LED`ach rózne animacje ;)
"wyjście" na LPT masz na bitach 2-9 wiec masz 8 bitów to pełnej zabawy :)
dokładajac jak ja demultiplekser i takie tam to wiesz to juz możesz to rozbudowywać ze HO HO (tzn. tak całkiem powaznie to na 8 bitach i na takich w miare prosto to na 28 urządzeń się spokojnie zrobi włącz / wyłącz)

to jest dla mnie czarna magia prosze prościej znaczy się do którego  pinu lpt co podłączyć

Offline

 

#7  2006-06-01 19:24:32

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

he nie myślałemże to trudnijesze ten program wydaje się tylko zbty prosty podejżewam że to trzeba coś dopisac do niego

program ten jest bogaty aż natto :]
bo w nim jest też "czytanie" wciskanych przycisków ;)

dobra, to tak...
ja to mam tak u siebie orpogramowane

Kod:

#include <stdio.h>
#include <unistd.h>
#include <asm/io.h>
#include <string.h>

// To jest adres portu równoległego w systemie
#define BASEPORT 0x278
// 0x278
// 0x0378 <-- to niby lp1
// 0x03bc <-- to niby lp0

int main(argc, argv)
int argc;
char **argv;
{
int i,j,k,l,spanie;
float t;
  // Przejmujemy kontrolę nad portem. Program musi być uruchomiony przez roota.
  //albo przynajmniej miec SUIDa ustawionego
  //chmod 4755 plik
if (ioperm(BASEPORT, 3, 1)) { perror("ioperm"); exit(1); }


if ( strcmp(argv[2], "rozmowa") == 0) {
//nowa rozmowa na GG
   spanie = 32 * atoi(argv[1]);

  for (i=1; i<16; i++)
  {
    outb(16+i, BASEPORT); outb(0, BASEPORT);
    usleep(spanie);
    outb(i, BASEPORT);  outb(0, BASEPORT); if (i==8) { outb(8, BASEPORT); }
  }

  for (i=15; i>0; i--)
  {
    outb(16+i, BASEPORT); outb(0, BASEPORT);
    usleep(spanie);
    outb(i, BASEPORT);  outb(0, BASEPORT); if (i==8) { outb(8, BASEPORT); }
  }

}

if ( strcmp(argv[2], "wiadomosc") == 0 ) {
//animacja dla nowej wiadomosci na GG
//w ramach otwartej rozmowy na GG :]
}



if ( strcmp(argv[2], "poczta") == 0 ){
// animacja dla nowej poczty
}


if ( strcmp(argv[2], "zerowanie") == 0 ){
//zerowanie - wygaszenie wsystkich - LED`ow
}

if ( strcmp(argv[2], "all") == 0 ){
//zapalenie wszystkich LED`ow
}


  usleep(spanie);
  outb(0, BASEPORT);
  // Zwolnij kontrolę nad portem.
  if (ioperm(BASEPORT, 3, 0)) { perror("ioperm"); exit(1); }
  exit(0);
}

uruchamiam to tak
./programik czas akcja

akcje masz tam przez if prawdzane
a czas jest do tego aby programik animacje animowal w ludzkim czasie ;)

dobra, zostawiłem Ci tylko jedną animacje (bo reszta nie ma sensu troche żeby Ci zostawiać)
ale do rzeczy, całość działa na taiej zasadzie, na pinach 2 - 9 (popatrz na cyferki na wtyczce do LPT) masz to co Cię interesuje

pisząc w programiku sterującym

Kod:

 outb(i, BASEPORT);

na BASEPORT drukujesz i, w przypadku liczb jest to proste, drukując przykładowo 0 masz na wsytkich ośmiu bitach ustawiane zero - proste :P
drukując 1 na pinie 2 masz logiczną jedynkę wiec pojawia się napiecie ok. 5V którym możesz coś "pobudzić do działania" - np. tranzystor otworzyć ;)

drukując, dalej, np. 7 jedynki pojawiają sie na pinach 2,3,4 na reszcie (5 - 9) masz zera

wiesz jak sie liczbę na system dwójkowy zamienia??
to własnie tak masz drukowane liczby w ten sposób jak powyzej zacząłem rozpisywać... :)

takie pierdułki jak demultiplekser, przerzutniki, etc.... rozumiesz co jak gdzie po co i takie tego??
jak nie to chociarz może powyższe tłumaczneie załapiesz :)

Offline

 

#8  2006-06-01 21:39:28

  Kowall_ptk - wieczny student

Kowall_ptk
wieczny student
Skąd: z nienacka :)
Zarejestrowany: 2005-02-17

Re: Sterownik urządzeń elektrycznych

Graffi kurczę, z nieba mi normalnie spadłeś!! Powiedz, czy powiadamianie przez lpt o nowej rozmowie na gg działa też, jak się siedzi w konsoli??


W Linuksie się da, tylko trzeba wiedzieć jak!

Offline

 

#9  2006-06-01 22:18:04

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

siedząc na konsoli rozumiesz korzystanie z EKG??
jak tak to spokojnie ze jest możłiwośc bo masz zdarzenie on przez które przkładowo na przychodzą wiadomosć mozesz coś wywołać... :)
powiedzmy uruchomic program x z parametrami przykładowo 100 i rozmowa i załatwione :)

aaaa co do Kadu (w którym to mam pokonfigurowane) to napisałem sobie swój moduł który służy tylko do powiadaniamia właśnie LED`ami podlutowanymi na do tego całego ustrojstwa

jak coś chcesz to sie odzywaj dalej
co będe umiał to pomoge :)

Offline

 

#10  2006-06-01 22:38:34

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

heh udalo sie mam tylko jeden dziwny problem zamiast na 2 pinie mam na 3 a na 2 jest caly czas napiecie

ps jak tym twoim programikiem się posługuje podaj przykład

./programik ten czas w czym sie podaje     i tutaj cyfry nazwy ??

Offline

 

#11  2006-06-01 23:05:05

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

to ze masz na 2pinie cały czas jedynkę (logiczną) a wiec owe 5V to dziwne...

dalej to tak, programik kompilujesz (pewnie sie doczytałeś) tak

Kod:

gcc -O2 nazwapliku.c

potem jak tu uruchamiasz to masz tak (w przypadku moim jak coś ma się zmeinaić, bo jak chcesz włącz / wyłącz to to moje trzeba odchudzić bo jest za bardzo bogate w pierdułki) że podajesz czas (w milisekundach chyba... chyba w tym procedura usleep usypia program na określony czas) i potem podajesz jedną z "animacji" które zaprogramowałeś, u mnie masz takie miejsca w kodzie programu

Kod:

if ( strcmp(argv[2], "wiadomosc") == 0 ) { 
//animacja dla nowej wiadomosci na GG 
//w ramach otwartej rozmowy na GG :] 

}

wiec opisane tutaj (niepisane ale opisane u mnie) działanie będzie wykonane przez program gdy napiszę

Kod:

./a.out 100 wiadomosc

i można tak się bawić prawie w nieskończoność :)

możesz podlutować (najprostrza zabawka) LED`y tak jak masz to opisane u Sed`a na stronce (podałem w mojej pierwszej wypowiedzi w tym wątku) i sobie mini pomigac w odpowiedzni (swój własny) sposób :)

Offline

 

#12  2006-06-01 23:52:32

  Kowall_ptk - wieczny student

Kowall_ptk
wieczny student
Skąd: z nienacka :)
Zarejestrowany: 2005-02-17

Re: Sterownik urządzeń elektrycznych

Grafii. Po kolei.
1. Co muszę mieć wkompilowane w jądro, żeby działało.
2. Chcę używać tego razem z Kadu, bo to jest mój komunikator, a kadu jak wiesz nie murga klawiaturą jak się jest w konsoli.
3. Mógłbyś podesłać ten moduł do kadu (najlepiej ze źródełkami).

Jak będę miał jakieś pytania, to się jeszcze odezwę.


W Linuksie się da, tylko trzeba wiedzieć jak!

Offline

 

#13  2006-06-02 09:57:17

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

1. Co muszę mieć wkompilowane w jądro, żeby działało.

nie wiem, możłiwe ze coś od LPT, ale mi to zawse działało, tam podajesz adres urządzeina wiec licze na to że to zawsze działą ;)

2. Chcę używać tego razem z Kadu, bo to jest mój komunikator, a kadu jak wiesz nie murga klawiaturą jak się jest w konsoli.

mój moduł działa gdzie nie jestes ;)
ale on jest przystosowany do wersji SVN (rozwojowej) i jezeli korzystarz z  jakiejść paczkowej (np. 0.4.3) to Ci kurde nie pójdzie, trzeba będzie go popoprawiać :|

3. Mógłbyś podesłać ten moduł do kadu (najlepiej ze źródełkami).

mógłbym :)
http://liza.umcs.lublin.pl/~wbronisz/kadu/led_lpt.tar.gz
to jest w źródełkach...
i jak wspomniałem działa obecnie z wersją SVN, od czasów KADU 0.4.3 troche sie pozmieniało bo pamiętam że troche go zmienialem :|

Offline

 

#14  2006-06-02 16:40:25

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

czy móglbym prosić kogoś o przerobienie tego programu tak żeby po wpisaniu np

./program 2 dawal napiecei na 2 pin a po ponownym wpisaniu tego samego je wyłaczał

dla 3 pinu 3 itd

ja w c jestem slaby i raczej nei dam sobie rady sam

Offline

 

#15  2006-06-02 17:00:53

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

Kod:

#include <stdio.h> 
#include <unistd.h> 
#include <asm/io.h> 
#include <string.h> 

// To jest adres portu równoległego w systemie 
#define BASEPORT 0x278 
// 0x278 
// 0x0378 <-- to niby lp1 
// 0x03bc <-- to niby lp0 

int main(argc, argv) 
int argc; 
char **argv; 
{ 
char *i;
  // Przejmujemy kontrolę nad portem. Program musi być uruchomiony przez roota. 
  //albo przynajmniej miec SUIDa ustawionego 
  //chmod 4755 plik 
if (ioperm(BASEPORT, 3, 1)) { perror("ioperm"); exit(1); }
i = argv[1];

if ( strcmp(i,"0") == 0 ) { outb(0, BASEPORT);   }
if ( strcmp(i,"1") == 0 ) { outb(1, BASEPORT);   }
if ( strcmp(i,"2") == 0 ) { outb(2, BASEPORT);   }
if ( strcmp(i,"3") == 0 ) { outb(4, BASEPORT);   }
if ( strcmp(i,"4") == 0 ) { outb(8, BASEPORT);   }
if ( strcmp(i,"5") == 0 ) { outb(16, BASEPORT);  }
if ( strcmp(i,"6") == 0 ) { outb(32, BASEPORT);  }
if ( strcmp(i,"7") == 0 ) { outb(64, BASEPORT);  }
if ( strcmp(i,"8") == 0 ) { outb(128, BASEPORT); }


  outb(0, BASEPORT); 
  // Zwolnij kontrolę nad portem. 
  if (ioperm(BASEPORT, 3, 0)) { perror("ioperm"); exit(1); } 
  exit(0); 
}

kompilujesz

Kod:

gcc -O2 ster.c

albo jak masz domyślną wersje gcc inną niz 3xx to używasz kompilatora z 3.xx (u mnie gcc 4.zz coś sie burzyło wiec robiłem:)

Kod:

gcc-3.4 -O2 ster.c

dalej tak, ponumerowaem Ci tak ze jak napisesz

Kod:

./a.out 2

to na bicie drugim (a wiec na pinie 3 na porcie LPT) pojawi sie logiczne 1 -jak nie odpowiada to se pozmieniaj te cyferki w warunkach i będziesz miał inaczej niz jest to przeze mnie zrobione ;)

EDIT:
gasisz wszystko dając

Kod:

./a.out 0

po prostu drukujesz na port 0 i masz zero ;)
hmm... należy to lepiej napisac, ale teraz nie mam czasu
nie wiedzialem czy Ci napisać tak jak ja wole czy tak jak Ty chciałeś
ale uznałem ze po mojemu jest lepiej :P
wiec jak sobie podlutujesz 8 kabli do kolejnych pinów (od 2 poczynajac)
to pisząc

Kod:

./a.out 1

dostaniesz jedynkę ligiiczną na swoim kabelku nr 1 a wiec na pinie 2 (tak napisałem)
jeżeli wolisz po swojemu to przerób jak wspomnialem te warunki co są ;)

Offline

 

#16  2006-06-02 18:01:55

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

elektronik ze mnei marny powie mi ktoś jak podłaczyć te tranzystory ??

Offline

 

#17  2006-06-02 19:49:44

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

chociarz same LEDy Ci się zapalają tak jak chcesz?? (o ile tak testowałeś co i jak ;) )

Offline

 

#18  2006-06-02 20:13:27

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

tak zapalają sie

Offline

 

#19  2006-06-02 21:05:58

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

wiesz co, sesja wzywa wiec nie wiem czy Ci dzis podrzuce schemat
poszukaj czegoś takiego na necie jak "klucz tranzystorowy"
jak chcesz to sucho poćwiczyć to polecam program "Circut maker" wersja student jest za free i pięknie na wine śmiga - używałem swego czasu do zaprojektowania swojego ukadu z LEDami ;)

jakby co to Ci w wolniejszej chwili poszukam i podrzuce tutaj schemat
ogólnie (jak się nie mylę) na baze trzeba podać maly prąd (pewnie tutaj ową jedynkę logiczna) a wówczas tranzystor sie otworzy i między emiterem a kolektorem popłynie prąd (tzn. zamknie się zbudowany tam obwód) ale to tylko moje głośne myślenie ;)

Offline

 

#20  2006-06-02 21:48:03

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

ktoś o zlotym serduszku podesłał mi m@ilem wiec korzystaj :)
http://liza.umcs.lublin.pl/~wbronisz/dug/klucz.pdf

Offline

 

#21  2006-06-07 21:42:50

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

i jak trwają prace??
bo mnie to troche intersuje :)

Offline

 

#22  2006-06-07 22:05:27

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

to tak w tym momęcie mam 70 % układów zbudowanych
program nietknięty
ale nie mam zbyt dużo czasu w tym momęcie zdanie do następnej klasy bardziej mnie interesuje ale za jakiś tydzień zajme się tym bardziej

Offline

 

#23  2006-06-17 08:50:21

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

układ gotowy dobrze sie zpisuje już zadziwiłem kilku kumpli :D:D

Offline

 

#24  2006-07-07 22:40:35

  Graffi - Użytkownik

Graffi
Użytkownik
Skąd: Sulejówek
Zarejestrowany: 2005-10-03
Serwis

Re: Sterownik urządzeń elektrycznych

fajnie że działa :)

ale ja poszukuje (tzn. znalazłem nawet troche ale chyba za bardzo sierotka z tego jestem) jak do tego typu sterowania wykorzystać game-port bo LPT mma już zajęty a w sumie podpiąłbym se jeszcze trochę "zabawek" :]
więc jakby ktoś miał taki w miarę opis co i jak z portem gier jeżeli o jakieś wykorzystanie go do sterowania czegoś to byłbym dżwięczny niezmiernie :)

Offline

 

#25  2006-09-18 16:35:14

  czechu - Członek DUG

czechu
Członek DUG
Skąd: Gorlice
Zarejestrowany: 2004-10-24

Re: Sterownik urządzeń elektrycznych

odgrzebuje wątek bo
potrzeba mi programi który po zwarciu któregoś tam pinu z masą przez oporniczek 2k ohm-y wyda polecenie shutdown -h now :] ew halt  jakieś pomysły ??

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)