Witam forumowiczów.
W tym wątku, chciałbym się podzielić pomysłem na unowocześnienie makiety/dioramy.
Z góry zaznaczam, że nie jestem programistą a cały wykorzystany w moim urządzeniu soft napisał @ethanak – kolega z forum FORBOT. Autor kodu może być znany niektórym osobom pod nickiem BRAINTRON.
Logo FORBOT użyte w projekcie w późniejszym etapie.
To on jest autorem kodu i mam jego zgodę na dalsze rozpowszechnienie. Zaznaczam tylko, że nie ma zgody na wykorzystanie kodu do celów zarobkowych. Można wykorzystać kawałek lub całość, można też modyfikować ale tylko i wyłącznie na potrzeby własne.
Jakiś czas temu, wpadłem na pomysł by trochę unowocześnić swoje torowisko. Makietą tego nie nazwę, gdyż cały czas ewoluuje i słowo makieta jest w tej chwili na wyrost.
Założenie było takie by niewielkim kosztem zrobić proste sterowanie semaforów i/lub tarcz świetlnych. Postanowiłem wykorzystać kilka ogólnodostępnych elementów, takich jak Arduino czy klawiatura membranowa.
Jako, że z pisaniem kodu nie mam nic wspólnego i nigdy sam nie napisałem żadnego od początku do końca, zacząłem przerabiać już istniejące projekty na moje potrzeby. Wtedy też na forum www.forbot.pl natrafiłem na użytkowników, którzy dali mi cenne wskazówki (@farmaceuta oraz @ethanak).
Co jakiś czas zagadując kol. @farmaceuta udało mi się stworzyć pierwszy działający sterownik, za pomocą którego przy wybraniu odpowiednich komend z klawiatury, na sygnalizatorze wyświetlany był odpowiedni sygnał.
Podpiąłem semafor 5cio komorowy i wyświetlałem na nim następujące sygnały: S1, S2, S3, S4, S5, S10, S11, S12, S13, Sz
Apetyt rośnie w miarę jedzenia i było mi mało. Znów z pomocą kolegów uzyskałem możliwość sterowania już dwoma semaforami.
Tak to wyglądało na początku (korzystałem ze strony www.wokwi.com)
Można też było sterować np. czterema tarczami manewrowymi:
Kolejnym pomysłem było rozwinięcie układu do obsługi 4 semaforów. Zaczęła się dyskusja na forum. Koledzy już chyba nie mogli znieść mojej niewiedzy z programowania i tego jak kaleczę kod. @ethanak zaproponował, że napisze to dla mnie. Po zebraniu wymaganych informacji (co, jak, ile etc.) zaczęło się. Właściwie to @ethanak zaczął – ja od tej pory robiłem za testera, zdając za każdym razem relację z osiągniętych efektów. W sumie poza efektami, to borykałem się z przeróżnymi awariami i problemami.
Od tego momentu, chciałbym wszystkim przedstawić jak etapowo powstawało i ewoluowało moje urządzenie o roboczej nazwie „sterownik urządzeń informacyjnych na makiecie”. Zaczęło się od obsługi wszystkich 10 podstawowych sygnałów (bez linijki świetlnej) a finalnie mam możliwość obsługi:
4 semaforów pięcio komorowych
4 sygnalizatorów dwukomorowych (można podpiąć Tm, To, Tz, SBL)
wyświetlacz dworcowy z odjazdami pociągów
dźwiękowy „zapowiadacz” peronowy
Wszystko sterowane poprzez ekran dotykowy lub z poziomu przeglądarki na telefonie/tablecie.
Kod jest napisany w taki sposób, że można modyfikować wszystkie ustawienia w miarę potrzeb i pod siebie.
Nazwy stacji, nazwy pociągów, zostały użyte tylko i wyłącznie na cele programu (kodu) i mogą nie mieć odwzorowania w świecie realnym – dlatego proszę nie pisać, że taki pociąg nie istniał, czy że nie ma takiego połączenia.
Postaram się co 2-3 dni opisać kolejny etap – a tych jest kilkanaście – jak powstawało urządzenie, co było wykorzystane, kilka zdjęć z działania i link do odpowiedniego wątku na forum Forbot.
ZACZYNAMY
W każdym z etapów, wgrywanie kodu odbywać się będzie za pomocą oprogramowania Arduino IDE (dostępne tu - https://www.arduino.cc/en/software). Osobiście korzystam ze starszej wersji 1.8.19. W dalszej części poradnika używać będę skróconej nazwy „IDE” (wiadomo wtedy, że chodzi o oprogramowanie Arduino)
Będę również na początku zamieszczać informację co zostało użyte (lub wgrane jako nowe – sterowniki, biblioteki). Użytych w poprzednich krokach nie będę wymieniać – jeśli czegoś brakuje, IDE nas o tym poinformuje stosownym komunikatem.
Zanim przystąpimy do etapu pierwszego, sprawdzamy czy wszystko jest ok – podpinamy nasze UNO do komputera, ustawiamy odpowiednią płytkę i port (uwaga, każdy może mieć inny numer COM w zależności od tego do jakiego USB się podepnie kabelek. U mnie zazwyczaj jest COM3, COM4, COM6).
W IDE wchodzimy w:
Przechodzimy kolejno:
Możemy teraz przystąpić do kolejnych etapów.
Miłego czytania i zabawy.
W tym wątku, chciałbym się podzielić pomysłem na unowocześnienie makiety/dioramy.
Z góry zaznaczam, że nie jestem programistą a cały wykorzystany w moim urządzeniu soft napisał @ethanak – kolega z forum FORBOT. Autor kodu może być znany niektórym osobom pod nickiem BRAINTRON.
Logo FORBOT użyte w projekcie w późniejszym etapie.
To on jest autorem kodu i mam jego zgodę na dalsze rozpowszechnienie. Zaznaczam tylko, że nie ma zgody na wykorzystanie kodu do celów zarobkowych. Można wykorzystać kawałek lub całość, można też modyfikować ale tylko i wyłącznie na potrzeby własne.
Jakiś czas temu, wpadłem na pomysł by trochę unowocześnić swoje torowisko. Makietą tego nie nazwę, gdyż cały czas ewoluuje i słowo makieta jest w tej chwili na wyrost.
Założenie było takie by niewielkim kosztem zrobić proste sterowanie semaforów i/lub tarcz świetlnych. Postanowiłem wykorzystać kilka ogólnodostępnych elementów, takich jak Arduino czy klawiatura membranowa.
Jako, że z pisaniem kodu nie mam nic wspólnego i nigdy sam nie napisałem żadnego od początku do końca, zacząłem przerabiać już istniejące projekty na moje potrzeby. Wtedy też na forum www.forbot.pl natrafiłem na użytkowników, którzy dali mi cenne wskazówki (@farmaceuta oraz @ethanak).
Co jakiś czas zagadując kol. @farmaceuta udało mi się stworzyć pierwszy działający sterownik, za pomocą którego przy wybraniu odpowiednich komend z klawiatury, na sygnalizatorze wyświetlany był odpowiedni sygnał.
Podpiąłem semafor 5cio komorowy i wyświetlałem na nim następujące sygnały: S1, S2, S3, S4, S5, S10, S11, S12, S13, Sz
Apetyt rośnie w miarę jedzenia i było mi mało. Znów z pomocą kolegów uzyskałem możliwość sterowania już dwoma semaforami.
Tak to wyglądało na początku (korzystałem ze strony www.wokwi.com)
Można też było sterować np. czterema tarczami manewrowymi:
Kolejnym pomysłem było rozwinięcie układu do obsługi 4 semaforów. Zaczęła się dyskusja na forum. Koledzy już chyba nie mogli znieść mojej niewiedzy z programowania i tego jak kaleczę kod. @ethanak zaproponował, że napisze to dla mnie. Po zebraniu wymaganych informacji (co, jak, ile etc.) zaczęło się. Właściwie to @ethanak zaczął – ja od tej pory robiłem za testera, zdając za każdym razem relację z osiągniętych efektów. W sumie poza efektami, to borykałem się z przeróżnymi awariami i problemami.
Od tego momentu, chciałbym wszystkim przedstawić jak etapowo powstawało i ewoluowało moje urządzenie o roboczej nazwie „sterownik urządzeń informacyjnych na makiecie”. Zaczęło się od obsługi wszystkich 10 podstawowych sygnałów (bez linijki świetlnej) a finalnie mam możliwość obsługi:
4 semaforów pięcio komorowych
4 sygnalizatorów dwukomorowych (można podpiąć Tm, To, Tz, SBL)
wyświetlacz dworcowy z odjazdami pociągów
dźwiękowy „zapowiadacz” peronowy
Wszystko sterowane poprzez ekran dotykowy lub z poziomu przeglądarki na telefonie/tablecie.
Kod jest napisany w taki sposób, że można modyfikować wszystkie ustawienia w miarę potrzeb i pod siebie.
Nazwy stacji, nazwy pociągów, zostały użyte tylko i wyłącznie na cele programu (kodu) i mogą nie mieć odwzorowania w świecie realnym – dlatego proszę nie pisać, że taki pociąg nie istniał, czy że nie ma takiego połączenia.
Postaram się co 2-3 dni opisać kolejny etap – a tych jest kilkanaście – jak powstawało urządzenie, co było wykorzystane, kilka zdjęć z działania i link do odpowiedniego wątku na forum Forbot.
ZACZYNAMY
W każdym z etapów, wgrywanie kodu odbywać się będzie za pomocą oprogramowania Arduino IDE (dostępne tu - https://www.arduino.cc/en/software). Osobiście korzystam ze starszej wersji 1.8.19. W dalszej części poradnika używać będę skróconej nazwy „IDE” (wiadomo wtedy, że chodzi o oprogramowanie Arduino)
Będę również na początku zamieszczać informację co zostało użyte (lub wgrane jako nowe – sterowniki, biblioteki). Użytych w poprzednich krokach nie będę wymieniać – jeśli czegoś brakuje, IDE nas o tym poinformuje stosownym komunikatem.
Zanim przystąpimy do etapu pierwszego, sprawdzamy czy wszystko jest ok – podpinamy nasze UNO do komputera, ustawiamy odpowiednią płytkę i port (uwaga, każdy może mieć inny numer COM w zależności od tego do jakiego USB się podepnie kabelek. U mnie zazwyczaj jest COM3, COM4, COM6).
W IDE wchodzimy w:
- Narzędzia -> Płytka -> Arduino Uno
- Narzędzia -> Port -> COM (wybieramy odpowiedni do jakiego jest podpięta płytka)
Przechodzimy kolejno:
- Plik -> Przykłady -> 01.Basics -> Blink
- (jest to kod wywołujący miganie diody wbudowanej w płytkę w odstępach 1sek.)
Możemy teraz przystąpić do kolejnych etapów.
Miłego czytania i zabawy.
Ostatnio edytowane: