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 - Pawel1995

Strony: [1]
1
Dopowiem że w akcie desperacji sformatowałem cały komputer.
Od nowa pobrałem i zainstalowałem MaSzyne, sterowniki wszystko inne...

Niestety nie zmieniło to efektu, nieznacznie zmieniło objawy.
Jak jest odłączone Arduino to sie symulator uruchomi, ale podłączenie Arduino nawet w trakcie działania programu, go wyłącza.

Warto wspomnieć że na laptopie obok działa wszystko normalnie i prawidłowo.
Więc podejrzewam że czegoś mojemu komputerowi brakuje, ale nie udało mi sie zdiagnozować co.
Menadżer urządzeń ma wszystko klarownie zainstalowane, a program "MWD SerialPort Tester" działa jak działał.

W załączniku daje pliki z ostatniego (nie) uruchomienia.

2
Pomoc doraźna / uart - bład symulacji po podłączeniu Arduino
« dnia: 12 Maja 2023, 11:54:45 »
Witam. Mam problem z podłączonym Arduino na MaSzynie. Wywala mi sie symulator i wyłącza, bez żadnego komunikatu. Po prostu po uruchomieniu się ładuje a po załadowaniu 'znika', pokazuje sie pulpit tak jakbym go w ogóle nie uruchomił.
Otóż problem jest w linijce, w eu07.ini:
uart COM3 115200 0.01 0.01bowiem jak jej nie ma, to symulacja się uruchamia normalnie.
A jak jest, to niezależnie czy Arduino jest podłączone do komputera czy nie, symulacja sie wywala.

Dodam jeszcze że w programie "MWD SerialPort Tester" wszystko z Arduino działa normalnie i prawidłowo.

Trasa - tor doświadczalny
Symulator - wersja obecna wersja 23.04
System - Windows 10 Pro, 8192MB RAM, NVIDIA GeForce GTX 1050 Ti 4018 MB
Logi w załączniku.

3
Bieżące Symulatorowe / Odp: MaSzyna z portem COM (SerialPort)
« dnia: 08 Kwietnia 2023, 16:35:10 »
Witajcie, wraz z kolegą podjąłem sie budowy pulpitu, dla państwa symulatora, opierając się na Arduino. Jako że samo zrozumienie ramki do i z Arduino, zajęło dużo nam czasu, to chciałbym podsumować swoją wiedzę i prosiłbym o wskazanie gdzie czegoś nie zrozumiałem, albo pomyliłem. Naturalnie o kilka spraw chciałbym też dopytać.

Przeglądałem państwa wikipedię, ale zatrzymała sie na LPT, o uarcie nic nie widziałem:
https://wiki.eu07.pl/index.php/Informacje_zwrotne

Może na początek mały błąd: że świeżo po zainstalowaniu MaSzyny nie ma w eu07.ini linijek uarttune, uartfeature, uartdebug i program startowy nie potrafi ich dopisać, w sensie nie zapisuje tego co tam wpiszę. Ale po dopisaniu stosownych lini,  już zmiana poprzez program startowy działa.

Brakujące linijki wziąłem od p. Maćka:
https://baur.pl/soft-do-zmiany/

uart COM3 115200 0.03 0.03
uarttune 26 225 71 236 1.4 255 0.8 255 0.8 255 0.8 255 4000 255 800 255 150 255
uartfeature yes yes yes yes
uartdebug no

Pierwszą rzeczą o którą chciałem dopytać jest "0.03 0.03" w poprzednim poście państwo wspomnieli że to <częstość wysyłania danych (czas)>. Rozumiem że "0.03" to 30ms.
W kodzie programu znalazłem ">> uart_conf.updatetime;", dlatego też nie rozumiem dlaczego "0.03" jest dwa razy. Kiedy wpisałem "0.03" jeden raz program działał tak samo.

uarttune jest skalowaniem wartości, z COM do PC(dla hamulców) i z PC do COM(dla manometrów i mierników) żebym w mikrokontrolerze nie zużywał niepotrzebnie zasobów, na skalowanie wartości.

Czyli p. Maciek ustawił kolejno:
>> uart_conf.mainbrakemin = 26       // Hamulec główny (Train brake)
>> uart_conf.mainbrakemax = 225
>> uart_conf.localbrakemin = 71    // Hamulec dodatkowy (Independent brake)
>> uart_conf.localbrakemax = 236
>> uart_conf.tankmax = 1.4      // Trzeci okrągły manometr - Ciśnienie w zbiorniku głównym(Tank press)
>> uart_conf.tankuart = 255
>> uart_conf.pipemax = 0.8       // Drugi okrągły manometr - Ciśnienie w przewodzie głównym(Pipe press)
>> uart_conf.pipeuart = 255
>> uart_conf.brakemax = 0.8       // Pierwszy okrągły manometr - Ciśnienia hamulców (Break press)
>> uart_conf.brakeuart = 255
>> uart_conf.pantographmax = 0.8   // (Domyślam się, nie sprawdziłem) Ciśnienie pantografu (pantograph press)
>> uart_conf.pantographuart = 255
>> uart_conf.hvmax = 4000       // Piąty prostokątny miernik - Napięcie od pantografu (HV voltage)
>> uart_conf.hvuart = 255
>> uart_conf.currentmax = 800       // Trzeci i czwarty prostokątny miernik - Prąd silników (HV current 1 oraz HV current 2)
>> uart_conf.currentuart = 255
>> uart_conf.lvmax = 150       // Drugi prostokątny miernik - Napięcie baterii (LV voltage)
>> uart_conf.lvuart = 255

W okrągłych nawiasach jest nazwa z opisu ramki danych "20220910 Maszyna UART.xlsx" z pierwszego wpisu.

Niestety ciśnienia pantografu nie sprawdziłem, próbowałem, ale te wskazanie ani drgnęło podczas testowej jazdy.

Czyli w ramach hamulców głównego(mainbrake) i lokomotywy(localbrake):
jeżeli mój potencjometr daje wartości od 70 do 180 to ustawię:
>> uart_conf.mainbrakemin = 70      // <- minimalna pozycja hamulca
>> uart_conf.mainbrakemax = 180    // <- maksymalna pozycja hamulca
a MaSzyna sama przelicza ile powinna ustawić, na podstawie otrzymanej wartości.

Z kolei tank, pipe, brake, pantograph, hv, current, lv to prostokątne i okrągłe mierniki na symulacji.
I działa to tak że '***uart' to skala górna jaką mamy na mierniku fizycznym, a '***max' to największa liczba jaką wpisuje np. jako wypełnienie PWM w Arduino.
Czyli jak dla prądu pierwszego zestawu silników (HV current 1) mam skale 1200A,
a maksymalne wypełnienie PWM w Arduino mam 65535(to tylko przykład, normalnie jest 255) to wpiszę:
>> uart_conf.currentmax = 1200
>> uart_conf.currentuart = 65535
i dostanę od maszyny liczbe "gotową" wyskalowaną wartość, którą nie musze przekształcać i wpisuje bezpośrednio do wypełnienia PWM.

uartfeature <nastawnik> <bocznik> <hamulec> <hamulec lokomotywy>
jest prosty: jeżeli jest "yes" to wartość wysłana z Arduino do MaSzyny jest wiodąca i nie można ustawić z klawiatury bo ta nastawa będzie nadpisywana. Jeżeli "no" to wartości z Arduino nie będą brane pod uwagę i sterowanie wiodące jest z klawiatury(w przypadku nastawnika i bocznika jeszcze można sterować za pomocą "Switch group", wtedy też jest na "no" w uartfeature).

Wspomniane cztery nastawy wysyłamy zgodnie z "20220910 Maszyna UART.xlsx" -> Data from pulpit to MaSzyna
<nastawnik> -> Master controller: podajemy liczbe od 0 do 43 i jest to aktualna pozycja.
<bocznik> -> Second controller: podajemy liczbe od 0 do 7 i jest to aktualna pozycja.
<hamulec> -> Train brake: podajemy odczytaną wartość analogową, MaSzyna sama ją wyskaluje za pomocą uarttune.
<hamulec lokomotywy> -> Independent brake: podajemy odczytaną wartość analogową, MaSzyna sama ją wyskaluje za pomocą uarttune.

Wspomniane wcześniej "Switch group" koreluje z "eu07_imput-uart.ini"

Switch group to 48 bitów sterujących(Z arduino DO MaSzyny) gdzie w "eu07_imput-uart.ini" wpisujemy numer bitu, rodzaj akcji, akcje. Akcja jest taka same jak w "eu07_input-keyboard.ini", więc wysłanie ustalonego bitu z Arduino do MaSzyny wywołuje akcję, którą normalnie możemy zrobić skrótem klawiszowym.

Rodzaje akcji są dwie impulse(guzik) oraz toggle(przełącznik). Po "impulse" dajemy jedną akcje, po "toggle" dwie akcje, pierwsza będzie wykonana kiedy bit jest '1', druga kiedy bit jest '0';

Na podstawie przykładu programu z wcześniejszego wpisu napisałem program na kilka podstawowych kontrolek/przełączników, oraz nastawnik i bocznik, na Arduino:
https://github.com/kaczor112/SterownikKontrolekMaSzyna
Niestety nie wiem dlaczego działa mi tylko dla prędkości 9600.

Nie potrafię sie komunikować z MaSzyną dla innych prędkości nawet 19200,
jeżeli ktoś z państwa ma na to radę to bardzo bym prosił o pomoc!

Niestety nie znam za dobrze angielskiego i przy czytaniu "20220910 Maszyna UART.xlsx" brakowało mi go.
Jeżeli mają państwo jakąś rozpiskę co jest czym, angielsko - polską to bardzo bym prosił.
Chodzi mi wyłącznie o "Indicator group 0-4", bo do pozostałych, jak widać wyżej już doszedłem(Hasler to 'Tacho').
Na chwilę obecną wiem że:
alerter - czuwak
line breaker - lampa wyłącznika szybkiego
motor resistors - lampa jazdy na oporach
Jeżeli ma ktoś z państwa rozpisane te bity również po polsku, to ułatwiłoby to nam zadanie!

Zdaje sobie sprawę że moja wiadomość nie wnosi nic nowego.
Może jedynie stanowić małe ułatwienie dla przyszłych nowicjuszy jak ja.
A ja będę miał zysk taki że upewnię sie czy wszystko dobrze zrozumiałem,
naturalnie proszę o podpowiedź gdzie coś sknociłem.

Brakuje mi jeszcze do pierwszego prostokątnego miernika(prąd ładowania akumulatora z przetwornicy), wiedzieć który sygnał(Data from MaSzyna) od MaSzyny jest właśnie dla niego.

Bardzo dziękuję za wszelką podpowiedź!

Strony: [1]