Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - maciek001

Strony: [1]
1
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 12 Maja 2020, 21:36:09 »
ale może poczekam na obsługę (enable/disable) zaworu trójdrogowego... Jest szansa?
Szansa zawsze jest :>
Jakbyście coś modyfikowali to dajcie znać na PW to będę czuwał nad aktualizacją plików ;)

EDIT: nie macie wrażenia, że jest trochę bałagan w ułożeniu bitów w bajtach wskaźników? Co o tym myślicie?

2
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 10 Kwietnia 2020, 17:27:46 »
W exe Milka jest dostępny parametr uarttachoscale do wpisania w ini. Podanie mu wartości 10.0 daje takie właśnie rezultaty, jak opisałeś, czyli prędkość jest mnożona razy 10 i dzięki temu podawana z dokładnością do 0,1km/h.
Dobrze wiedzieć. Dodam do programu zaraz :)
Milek7 jest więcej takich niespodzianek? ;)

3
Powoli aktualizuję wątek: https://eu07.pl/forum/index.php/topic,28460.0.html
Są tam dostępne ciekawe programy i pliki.

4
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 10 Kwietnia 2020, 09:26:42 »
A dodana jest obsługa lampki przekaźnika różnicowego obwodu głównego? Jest na nią miejsce na 5 Bajcie 3 bicie, między między nadmiarowy przetwornicy a nadmiarowy silników trakcyjnych.

Milek7 ma prędkość na 16 bitach ale bez wartości po przecinku. Co myślicie o tym, aby zwiększyć dokładność prędkości do 0,1km/h? 4 młodsze bity na wartości po przecinku lub prędkość mnożyć x10 i pulpit by już sobie to dekodował.
Aby zachować kompatybilność wsteczną z 8bitową prędkością można zrobić wpis do eu07.ini do parametru uartfeature na koniec z defaultową wartością no. Osobiście twierdzę, że prościej jest mnożyć prędkość x10 i w takiej formie przesyłać bez kombinacji z przesuwaniem bitów.

5
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 08 Kwietnia 2020, 18:42:43 »
Sama komunikacja trochę ewoluuje i aktualne moje prace związane są bardziej z tą modyfikacją @Milek7.
Postaram się to wszystko odświeżyć i opracować. Mam dużo pracy więc proszę o cierpliwość. Jeżeli ktoś jest ciekawy co jest przesyłane, polecam zobaczyć pliki UART.c na repozytorium.

@Tmj i @Milek7 czy możemy ramkę danych ujednolicić?

6
Bieżące kolejowe / Odp: Imprezy Kolejowe
« dnia: 07 Września 2018, 17:04:04 »

7
Kilka kwestii:
Cytuj
...2. Nie wymaga pozwolenia używanie urządzenia radiowego nadawczego lub nadawczo-odbiorczego:
[...]
2) używanego, zgodnie z przepisami międzynarodowymi, w służbie amatorskiej...
tutaj pojawia się magiczny zwrot "służba amatorska", która wymaga licencji operatora w służbie amatorskiej.

Mieszasz pojęcia posiadania i używania. USTAWA z dnia 16 lipca 2004 r. Prawo telekomunikacyjne nie mówi ani słowa o posiadaniu, mówi natomiast o używaniu. Porównanie z bronią jest nietrafione.
Posiadać można ale nie można używać. Czy nasłuch będzie brany za używanie? To zależy od dobrej woli osoby kontrolującej. Jeżeli dostali jakieś sygnały o zagłuszaniu wtedy nie będą się raczej litować.

Natomiast straszenie, że posiadanie nadajnika jest karalne, to nie wiem skąd to wzięliście. Powszechnie można go używać na wolnych pasmach, m.in. piloci latający na różnych cudach mają umowną wolną częstotliwość i z reguły jak widzisz jakiegoś latającego gościa, to można próbować go na tych falach złapać.
Głupoty Pan gadasz ;) Nie można używać żadnego nadajnikach na wolnych pasmach o ile nie jest się radiooperatorem i nie posiada się licencji! Jedyne chyba jakie jest "wolne pasmo" to PMR, na który można używać urządzeń certyfikowanych PMR, spełniające wymogi tego rodzaju radia (między innymi modulacje, moce nadajnika i nierozłączalność anteny).
Co do lotnictwa: to jest pasmo zastrzeżone do ruchu, kontroli i urządzeń nawigacyjnych, w których może nadawać tylko osoba do tego uprawniona. Nie jest to umowna częstotliwość tylko całe pasmo. Tutaj wchodzimy już w sferę stref kontroli lotów i informacji lotniczej.
Jeżeli ktoś słucha sobie paralotniarzy na częstotliwościach amatorskich to nie oznacza, że to pasmo jest dostępne dla każdego tylko prawdopodobnie paralotniarze łamią przepisy posługując się takimi radiami na pasmach w których wymagane jest pozwolenie radiowe. Niestety jest to częste zjawisko i jeżeli ktoś siedzi w krótkofalarstwie to wie, że jest to powszechne zjawisko.

PS: za nadawanie na częstotliwościach profesjonalnych (lotnictwo, PKP) można iść nawet do więzienia na kilka lat. Podchodzi to o stwarzanie zagrożenia w ruchu lotniczym/lądowym.

Tak samo nie można prowadzić nasłuchu na cały przedział. Jest to chyba tylko wykroczenie (trzeba sprawdzić). Dlaczego? Każdy nasłuchowiec (nawet jak nadajesz jesteś przede wszystkim nasłuchowcem) ma obowiązek zachować wszystko to co usłyszał dla siebie. Chodzi głownie o wrażliwe dane ale jest gdzieś paragraf na to.

UKE dokonuje kontroli na zasadzie pomiarów terenowych. Chodzi o znalezienie źródła fal radiowych. Teoretycznie jak nie nadajesz to nie powinni się czepiać. Trzeba uważać, żeby przez przypadek nie puścić nośnej dlatego lepiej jest mieć skaner, który odbiera zwykle więcej pasm i teoretycznie może mieć większą czułość niż zwykły ręczniak.

Ja używam skanera ICOM-a, niestety nie pamiętam nazwy.
Edit: już wiem :) ICOM IC-R5

8
Dodam jeszcze od siebie, a raczej przypomnę, że pochylając przeciwwagi w antenie GP zmienia nam impedancję, która powinna być identyczna jak odbiornika i fidera (rys. 16, str. 32 pdf-a nr 1.).
Stosując różne rodzaje anten GP można uzyskać większe zyski, np antenę GP 5/8 (także w pdf 1.). Ciekawe są też anteny J-pole
Ważne jest umiejscowienie anteny i to w jaki sposób jest ustawiona (polaryzacja).

W pdf 2. jest fajny przykład jak wykorzystać gniazdo antenowe na panel do budowy GP.

Kupując skaner warto sprawdzić jakie ma złącze (SMA, BNC) i ewentualnie kupić przejściówkę.

Spis pdf-ów:
1. http://www.antenna.com.pl/attachments/article/96/Poradnik%20antenowy%20wydanie%20II.pdf
2. https://elportal.pl/pdf/k15/32_01e.pdf

9
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 12 Lipca 2018, 09:56:20 »
Wracam do domu 6.08.br. i będę skrobał całość jeszcze raz. W pierwszym poście zrobię edit jak się da i napiszę jeszcze raz wszystko przejrzyście.

10
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 09 Lipca 2018, 09:49:25 »
Proponowałbym wyczyścić ten temat i napiszę wszystko jeszcze raz od nowa. Co o tym myślicie?

11
Komunikacja już nie emuluje klawiatury. Wysyła się pozycje konkretną i na taką się ustawia. Jeżeli się zawiesza program to znaczy, że jest np pozycja bezoporowa i wrzucony bok, czego nie sprawdza i nie obsługuje MaSzyna. Po prostu jest błąd :)

@miko22: mam pulpit kostkowy z Tarnowa Głównego, który aktualnie rozbieram i będę go czyścił, naprawiał, podświetlał LED-ami cyfrowymi na początek. Drugi etap to będą prace polegające na podłączeniu przycisków sterowniczych. Jeżeli powstanie sceneria już z zabytkowym przebiegiem torów to będę mógł pomyśleć o podłączeniu ale na początek chcę zrobić symulację przejazdów pociągów - oczywiście w dalekiej przyszłości.

12
Taka ciekawostka:
załączam niżej struktury danych, które używam przy komunikacji za pomocą portu COM. Komuś może się przydać. Już niedługo powinniście dostać szkielet programu dla Arduino. Czytajcie niżej...
typedef struct 
{
uint8_t dataLength;         // ilość bajtów
uint8_t speed;         // 0
uint8_t sw0;         // 1
uint8_t sw1;         // 2
uint8_t sw2;         // 3
uint8_t sw3;         // 4
uint8_t sw4;         // 5
uint8_t sw5;         // 6
uint16_t brakePress;         // 7-8
uint16_t mainPipiePress;         // 9-10
uint16_t mainTankPress;         // 11-12
uint16_t highVMeter;         // 13-14
uint16_t ampHV1Meter;         // 15-16
uint16_t ampHV2Meter;         // 17-18
uint16_t ampHV3Meter;         // 19-20
uint16_t PWM0; // 21-22
uint16_t PWM1; // 23-24
uint16_t PWM2; // 25-26
uint16_t PWM3; // 27-28
uint16_t PWM4; // 29-30
}dataIn_t;

typedef struct
{
uint8_t dataLength;         // ilość bajtów
uint8_t sw0;         // 0
uint8_t sw1;         // 1
uint8_t sw2;         // 2
uint8_t sw3;         // 3
uint8_t sw4;         // 4
uint8_t sw5;         // 5
uint8_t mainController;         // 6
uint8_t shunt;         // 7
uint16_t mainBrake; // 8-9
uint16_t locomotiveBrake;      //10-11
uint16_t analog0;        // 12-13
uint16_t analog1;        // 14-15
}dataOut_t;
Może się okazać, że trochę zmieni się ramka danych. Aktualnie zastanawiamy się z miko22 czy nie dodać jeszcze kilku bajtów: bajt dla prędkości (będzie 16bitów) i kilku PWM-ów 16-bitowych max.

Jakieś pomysły?

13
Co do SM42 to musiałyby być dwie kamery przynajmniej i wtedy by to miało dopiero sens. ale kusi ;)

14
Bieżące Symulatorowe / Odp: MaSzyna z portem COM
« dnia: 30 Września 2017, 13:39:02 »
Sorki! Żyję :) Prace trwają z pomocą milek7. Aktualnie podstawowe rzeczy w ET22 (bo na tym mam jak testować) działają. Podstawowe mam na myśli pulpit (bez przełącznika hamowania). Najnowsze exe dostępne pod adresem: https://ci.appveyor.com/api/buildjobs/yoh3vc3f007wb9u9/artifacts/builds%2Fbuild_win64%2FRelWithDebInfo%2Feu07%2B%2Bng.exe

Wczoraj pulpit jeździł na Małopolskiej Nocy Naukowców na PWSZ w Tarnowie.

Co zostało przerobione:
- normalne sterowanie (nie ma już emulacji klawiatury)
- wykorzystana biblioteka opensource zamiast windowsowskiej - czy będzie działać na innych systemach? chyba tak.
- zmiana w parametrach z pliku eu07.ini (update już niedługo)

//uart <nazwa portu> <nie zmieniać> <częstość wysyłania danych (czas)>
uart COM3 500000 0.1 0.05

//uarttune <ham. zespolony min> <max> <ham. dodatkowy min> <max> <ciśnienie max w zbiorniku gł.> <max wartość dla PWM> (to samo dla przewodu gł i cylindrów hamulcowych)
uarttune 46.0 943.0 175.0 874.0 0.9 1023.0 0.7 1023.0 0.5 1023.0 4000.0 1023.0 800.0 1023.0

//uartfeature <nastawnik> <bocznik> <hamulec> <hamulec lokomotywy>
uartfeature no no yes yes

//uartdebug <wyświetlanie danych debugowania w konsoli>
uartdebug no

15
Na warsztacie / Odp: Odp: Exe - konwersja na C++
« dnia: 27 Lutego 2017, 12:22:49 »
Panowie będę miał prośbę. Możecie dodać przyciemnianie reflektorów? Na razie może być bez przycisku na klawiaturze - wystarczy sama metoda. Może wystarczy zdefiniowanie gdzieś jasności po przyciemnieniu i zrobienie Dim-a z boolem :) widzi się to komuś?

16
Na warsztacie / Odp: Odp: Exe - konwersja na C++
« dnia: 22 Lutego 2017, 22:55:56 »
Zrobiłem PullRequesta z moimi plikami.
Ktoś wywalił z Globals.cpp Console::ModeSet(iFeedbackMode, iFeedbackPort); przez co nie dało się włączyć jakiegokolwiek starego FeedBacka. Było to zabezpieczoną jakąś zmienną qp ale takowej już nie ma także "leży luzem".

Moje poprawki trochę zmieniają samo sterowanie i możliwość dodania kranów innych niż FV4a i FVel6 do sterowania analogowego (przekazuje się wartość od 0 do 1). Dla FVel6 jest nowy if zrobiony (wcześniej razem z FV4a był) bo jest całkiem inny zakres działania. Dodałem swoje debugowania i udostępnię plik w excelu z całym opisem (jak już skończę).

Nie wiem czemu "nie widzi mi" poprawnie iPause. Chciałem zrobić uzależnienie, że jak pauza to prędkość poruszania jest 0. Nie działa mi to niestety na razie.

Wszystko było testowane i działa - PoKeys też. Nie trzeba wprowadzać żadnych zmian do zmiennych kalibracyjnych PoKeys.

PS:
Jak skończycie przenosić całą MaSzynę na C++ do końca tego roku to zamówię Wam po kracie piwa z dostawą do domu.
Trochę spóźnienia mieli chłopaki ale myślę, że i tak zasłużyli!

17
Bieżące Symulatorowe / MaSzyna z portem COM (SerialPort)
« dnia: 13 Listopada 2016, 17:07:48 »
Konfiguracja portu szeregowego (COM):
Standardowa ramka UART -> 8 bitów danych, 1 bit stopu, bez kontroli parzystości i przepływu
Prędkość można ustawiać w pliku eu07.ini. Ja używam 0,5Mbps (przejściówka UART-USB).

Jak działa transmisja:
Transmisję rozpoczyna PC-et wysyłając pierwszy bajt danych. Mikrokontroler od razu odsyła pierwszy bajt danych.
Drugi bajt danych z PC - drugi bajt danych z uKontrolera itd.
Jeżeli uKontrolerowi skończą się dane do wysłania to tylko odbiera.

Jak to działa w praktyce: komputer nadaje całą ramkę danych. Mikrokontroler powinien niezwłocznie nadać dane do komputera. Mikrokontroler może wysłać wszystkie dane w momencie odebrania czegokolwiek od PC-ta (full-duplex). Nie wysyła się danych do PC-ta więcej razy niż PC-et wysłał do mikrokontrolera. Taki sposób transmisji zabezpiecza przed wysyłaniem danych jeżeli port szeregowy w komputerze nie został jeszcze otwarty.

Konfiguracja wejść (przycisków i przełączników):
Przypisania wejść do funkcji dokonuje się w pliku eu07_input-uart.ini. Umożliwia konfigurację sygnału jako impulsowego lub bistabilnego (przełącznika).

Konfiguracja wyjść (lampek kontrolnych, itp):
Nie ma możliwości skonfigurowania tego rodzaju sygnałów. Są one na stałe przypisane do danego Bajtu i bitu (patrz dokumentacja w arkuszu kalkulacyjnym).

Wpisy do pliku eu07.ini:
Do wygenerowania wpisów polecam aplikację MWD SerialPort tester (link niżej). Umożliwia załączenie/wyłączenie obsługi nastawników, kranów hamulców (wejść), kalibrację mierników (manometrów i elektrycznych), konfigurację prędkości transmisji danych i inne.

Programy i przydatne pliki do programowania i testowania elektroniki do pulpitów:
Pod linkiem https://drive.google.com/drive/folders/17aRJMr7fRE2PSOPi4jztCh_sjgfq0Xwz?usp=sharing znajdziecie kilka plików i program, które mogą przydać się przy budowie elektroniki do pulpitu:
  • Program MWD SerialPort tester  służy do generacji wpisów do pliku eu07.ini oraz testowania komunikacji z elektroniką - emulacja symulatora. Można w nim zadawać i odczytywać stany przełączników i kontrolek, odczytywać wartości nastawników i innych kontrolerów. Podczas pierwszego uruchomienia generują się pliki indicatorInfo.ini i switchInfo.ini, w których można przypisać nazwy do kontrolek i przełączników. Program wspomaga ramkę danych od Milek7, opisaną w pliku poniżej.
  • Plik * Maszyna Uart.ods zawiera informacje na temat danych wysyłanych w obu kierunkach
  • Plik libserialport-0.dll: można go podmienić z plikiem w folderze maszyny jeżeli komunikacja z moim programem działa, a Maszyna się nie włącza i generowany jest plik dump (mnie pomogło).

MWD SerialPort tester
Zrzuty z programu dostępne tutaj: https://drive.google.com/drive/folders/1kNK0Q2bLePwM6I0lvyZe6gXf6CnAO8Gt
Wypuściłem wersję 1.0 (u mnie działa). Jeżeli są jakieś problemy proszę o stosowną informację w PW.

Linki do do exe:
- od Milek7: https://ci.appveyor.com/project/Milek7/maszyna/build/artifacts
- od Tmj: https://eu07.pl/forum/index.php/topic,28920.0.html
exe od Tmj powinno już obsługiwać nową ramkę.

Aktualizacja 2020.04.08 1855
Powoli dokonuję zmian w tym wpisie. Będę go czyścił i redagował na nowo.
Exe z jakim współpracować będzie opisana ramka będzie od Milek7.

Aktualizacja 2020.04.09 2135
do programu MWDSerialPortTester dodano generację wpisów do pliku eu07.ini.

Aktualizacja 2020.04.10 1830
MWDSerialPortTester 0.2.2 poprawiono generację wpisów do pliku eu07.ini oraz dodano wpis uarttachoscale - mnożnik prędkości.

Aktualizacja 2020.04.13 1320
Aktualizacja arkusza kalkulacyjnego o przekaźnik różnicowy (ground_relay). Exe Tmj powinno współpracować z nową ramką.

Aktualizacja 2020.05.12 2100
MWDSerialPortTester 1.0. Poprawa wyglądu i drobne porządki w kodzie.

Aktualizacja 2020.05.31 1130
Edycja postu: uzupełnienie informacji.

18
Tabor kolejowy / Odp: Prędkościomierz Hasler.
« dnia: 11 Września 2014, 10:15:56 »
Chciałbym odświeżyć wątek gdyż nie ma sensu rozpoczynać nowego:
W załączniku rysunek, jak działa prędkościomierz Hasler.

1. Silnik krokowy: najlepiej byłoby użyć jakiegoś ze starej drukarki, a jeszcze lepiej unipolarnego. Wynika to z połączenia cewek silnika: wystarczy wspólne zaciski cewek podłączyć do zasilania (najlepiej z ograniczeniem prądowym), a drugie końce cewek kluczować do masy np przez tranzystor N-MOS. Sterowanie polega na przesuwaniu stanu wysokiego w dowolnym kierunku po 4-rech wyjściach podłączonych do bramek tranzystorów.

2. Silniki inne niż synchroniczne (mam na myśli takie, których nie możemy pewnie kontrolować prędkości obrotu) czyli np zwykłe szczotkowe nie będą się nadawać. Zmieniając opór na wale będzie zmieniać się prędkość obrotowa, a co za tym idzie wskazania prędkościomierza.

3. Silnik oryginalny:
3.1 - Budowa: oryginalny silnik ma trzy cewki połączone w trójkąt. Na wale zamocowany jest magnes stały. Zmieniając napięcia na cewkach zmieniamy pola magnetyczne wokół wału dzięki czemu jest on obracany. Do sterowania najszybciej byłoby użyć falownika.
3.2 - Inne rozwiązania:
3.2.1. Jeżeli chcemy tylko kręcić silnikiem to wystarczą nam dwa kabelki podłączone do zasilacza. Przełączamy je na zmianę:
takt                 1         2         3
wejście 1      GND     NC      VCC
wejście 2      VCC    VCC      NC
wejście 3       NC     GND     GND

Taki sposób działa ale jest problem z prędkością chwilową wału. Wskazówka Haslera skacze w szczególności przy małych prędkościach.

3.2.2. Rozwiązaniem powyższego problemu jest zwiększenie ilości kroków. Aktualnie pracuje nad prostym falownikiem na mikrokontrolerze i wzmacniaczach audio. Plusem jest to, że mamy bardziej płynny ruch i wskazówka już tak nie skacze nawet przy małych prędkościach. Minusem jest pobór mocy i oddawanie je do otaczającego nas środowiska. Użyte wzmacniacze klasy AB mają duże straty mocy. Odpowiedzią mogłoby być teoretycznie sterowanie PWM-em ale niestety uzwojenia połączone w trójkąt stanowią duży problem natury technicznej.

Reasumując: jeżeli komuś nie zależy na wyglądzie, a ma silnik krokowy większej mocy (ze stacji dyskietek może nie wystarczyć) to może zrobić prosty sterownik z kilku elementów elektronicznych lub mikrokontrolera. Jeżeli ktoś chce full oryginal to zostaje mu drogi falownik lub własne konstrukcje. Aktualne testy przybliżają mnie do odwzorowania rzeczywistego napędzania tego ustroju lecz jeszcze nie jest to wersja końcowa i oficjalna.

PS: jeżeli ktoś ma jakieś własne przemyślenia i obserwacje zapraszam do podjęcia rozmowy :)

Zapomniałem opisać rysunek: prądnica zasilana jest z ogranicznika prądu. Po tarczy (przypominającej komutator z silnika szczotkowego) poruszają się trzy szczotki. napięcie rozkłada się po obu stronach (górnej i dolnej) symetrycznie (coś jak dzielnik napięciowy). Taki układ zapewnia nam przesunięcie napięć (jak w sieci 230/400V lub jak podaje falownik 3-fazowy) o 120 stopni. Na każdym wyjściu dostajemy sygnał kwazi sinusoidalny (schodkowy). Czym więcej schodków tym większa rozdzielczość i płynność obrotu silnika napędzającego prędkościomierz.

edit: 2014.10.02 -> udało mi się odpalić ładnie oryginalną konfigurację :) Jeszcze nie jest to idealne bo muszę napięcie podnieść powyżej 40V i wprowadzić regulację prądu ale już działa i rozpędza się do wartości maksymalnej (150km/h). Oto filmik :)


edit: 2014.10.03 -> napięcie podniesione do 45V, przy niższych obrotach ograniczany prąd. Zostało tylko jeszcze wyeliminowanie grzania przy postoju. Prawdopodobnie będzie odłączane zasilanie dla końcówki mocy (schemat już jest).
Jeżeli kiedyś powstanie wersja 2 to pochwalę się osiągnięciami ;)

edit:2015.11.04 -> Odświeżam temat (chociaż zastanawiam się nad otwarciem nowego tematu poświęconemu sterowaniu silnikiem z RT9).

Pewnie ktoś z Was spotkał się już z tym filmikiem: https://youtu.be/7h80bPbvdqA

Sterowanie rozwiązane w następujący sposób:
1: Końcówka mocy - 3 półmostki na tranzystorach MOS (gotowy scalak)
2: Regulacja napięcia za pomocą sygnału PWM - wartość wypełnienia zależy od dwóch rzeczy: jaka jest faza sygnału oraz współczynnika regulującego prąd.

Na silniki podawane są trzy sygnały trapezowe przesunięte o 120 stopni. Wartość dla każdego kroku zapisana jest w tabeli dla mikrokontrolera, a następne przed wpisaniem do odpowiedniego rejestru pomniejszana o wartość dobraną eksperymentalnie.

Napięcie zasilania to ok 42V. Na silnik w zależności od prędkości podawane jest pomniejszone napięcie (dzięki między innemu współczynnikowi). Ogranicza to straty cieplne.

Jeżeli ma ktoś jakieś pytania to chętnie odpowiem :)

Strony: [1]