Форум Trainsim

Форум Trainsim (http://www.trainsim.ru/forum/index.php)
-   MSTS - Маршруты (http://www.trainsim.ru/forum/forumdisplay.php?f=19)
-   -   Сигнализация: конфигурация и скрипты (http://www.trainsim.ru/forum/showthread.php?t=13819)

Seafarer 04.12.2013 03:05

[QUOTE=APK-LVDZ;434647]Могу только посоветовать сменить сигнализацию :) У Тимаса есть некоторые недоработки, хотя и от настроек тоже зависит.[/QUOTE]

Понимаешь в чем дело, до видоизменения скриптов ( по причине нехватки того или иного светофора ) - такого не было, родная Тимасовская компоновка работает нормально...Но, маршрут ее принимать отказывается, я удаляю с маршрута все светляки, меняю скрипт и конфиг и пытаюсь снова зайти в редактор, и тут начинается, вернее ничего не начинается - тупо вылет...Есть ли решение для такого косяка?

APK-LVDZ 04.12.2013 07:13

Если вылет происходит после подмены скриптов, то значит удалены не все сигналы. Это можно найти через тот же редактор сценариев. Реже, но тоже бывает, остаются маркеры, которых в редакторе маршрута нет. Это лечится удалением секции пути с невидимым маркером.

Seafarer 04.12.2013 12:48

[QUOTE=APK-LVDZ;434656]Если вылет происходит после подмены скриптов, то значит удалены не все сигналы. [/QUOTE]

Нашел, снес, пока обойдусь без сигналки...Слишком много светофоров не хватает...

КЕ 27.12.2013 00:26

[QUOTE=APK-LVDZ;434656]...бывает, остаются маркеры, которых в редакторе маршрута нет. Это лечится удалением секции пути с невидимым маркером.[/QUOTE]
Было такое, видны только в AE.

Zabor 27.12.2013 01:02

Такой маркер обычно легко отлавливается в W по параметру высоты, там будут значения эдак в 100-800 метров, может быть и минус, установить в W ноль или сколько там на тайле, зная TrItemId из W найти в текущей БД маршрута и тоже поправить высоту - вылезет, куда он денется =)).

APK-LVDZ 27.12.2013 01:13

Ух как сложно, ищите более простые пути :). Переместить секцию пути куда проще, чем искать всё это в бесконечном потоке символов.

Zabor 27.12.2013 03:53

Есть же Notepad2 и Search and Replace =)).

Проблема в том, что секцию не всегда быстрее удалить, это может быть секция А4 с еще тремя и более светофорами, может быть "вправленная" руками для качественного стыка.

Два одномоментных изменения в БД за одно сохранение (секция и светофор) тоже очень айс, но это будет важно только в случае сбоя.

КЕ 27.12.2013 08:51

Игорь, спасибо за подсказку, про высоту не знал... на днях была [URL="http://www.trainsim.ru/forum/showthread.php?p=438453#post438453"]похожая тема[/URL] - удалял, как писал Алексей.

Seafarer 16.02.2014 17:47

Ребята, а однопутка вообще может быть 3АБ? Я думал что у меня в маршруте часть под полуавтоматом, но на фотках увидел 3-х линзовые светляки на однопутке в обоих направлениях...И как происходит расстановка в данном случае?

ASR 16.02.2014 19:21

[QUOTE=Seafarer;447096]Ребята, а на однопутке вообще может быть 3АБ? И как происходит расстановка в данном случае?[/QUOTE]
Ещё как может! Есть у нас в Казани такой участок (Казань-Пасс - Дербышки), обычная трёхзначная блокировка стоит.
В таком случае светофоры ставятся так же, как двухпутном участке, для обоих направлений движения (по обоим сторонам полотна). Но с учётом того, что проходные светофоры как бы взаимно блокируют друг друга. Т.е если для одного направления дан "зелёный", для встречного будет "красный". В остальном, всё то же самое, что и на двухпутке.

Подтверждение - мой маршрут Светлоярск, там на однопутках как раз 3АБ стоит.

Raskolnikov 16.02.2014 19:57

Действительно, однопуток с автоблокировкой полно.
[QUOTE=Agis;447102]. Т.е если для одного направления дан "зелёный", для встречного будет "красный". В остальном, всё то же самое, что и на двухпутке.
[/QUOTE]
Не совсем так. Автоблокировка может находится в одном из двух направлений. При этом на светофорах встречного направления огни гаснут. Это реализовано в сигналке [B]APK_LVDZ[/B].

Yurik 17.02.2014 12:51

[QUOTE=Agis;447102]Но с учётом того, что проходные светофоры как бы взаимно блокируют друг друга. Т.е если для одного направления дан "зелёный", для встречного будет "красный". В остальном, всё то же самое, что и на двухпутке.[/QUOTE]
В реале сигналы встречного направления погашие!

КЕ 17.02.2014 13:45

[QUOTE=Yurik;447186]В реале сигналы встречного направления погашие![/QUOTE]
Да. Вот у нас раньше участок Монино - Фрязево был 1-путный, всё именно так. Стоим, ждём пригородный, смотрю - вдалеке проходной погас - ага, сейчас оттуда на Москву электропоезд пойдёт!:)
В МСТС их тоже можно погасить, если в скрипте прописано [B]enabled! [/B] (выключён) без огней.

GeneZone 17.02.2014 17:07

[QUOTE=Yurik;447186]В реале сигналы встречного направления погашие![/QUOTE]

Хотя в справочной литературе по СЦБ написано, что существуют системы, как с гашением встречных сигналов, так и с перекрытием на красный.
Но последние менее экономичны, поэтому, наверное, применяются реже(или совсем редко).

vicente 13.05.2016 00:41

[QUOTE=КЕ;447190]В МСТС их тоже можно погасить, если в скрипте прописано [B]enabled! [/B] (выключён) без огней.[/QUOTE]
Если бы так... В МСТС гасится "через Копенгаген". Там кучу условий нужно прописать, чтобы "отловить" ту самую ситуацию.
В Open Rails эта функция работает иначе и погасить светофоры противоположного направления довольно легко

КЕ 16.10.2016 22:04

Где-то в мануалах по ОР было про аспект [B]state = -1;[/B], но не могу найти, где... как его использовать, и какие типы (NORMAL, SHUNTING...) могут с ним работать?

vicente 16.10.2016 23:26

В мануалах? Аспект? Не помню.
На буржуйских форумах некоторые индивидумы (в основном, итальянцы) активно возмущались тем,что в Open Rails этот аспект, как раз-таки , НЕ РАБОТАЕТ. Вроде, пофиксили. Не знаю точно. Мы же с тобой этот аспект тестировали и в МСТС и в ОР. На локомотивный выдается неконтролируемый аспект. С тех пор я этот -1 забросил.
В мануале есть другое по -1. Но, речь там не об аспекте, а о параметре SignalNumClearAhead. Это -- да. И на своей сигнализации оно у меня используется почти что везде.

КЕ 16.10.2016 23:27

А как SNCA может быть отрицательным??? В чём хитрость?

vicente 16.10.2016 23:30

Хитрости никакой нет. Просто прописана новая возможность для программирования сигнализации. При SNCA = -1 сигнальная точка (c -1) не учитывается при вычислении SNCA остальных светофоров.

КЕ 17.10.2016 00:42

Интересно.
А может, в аспектах "минус" тоже не учитывается, и сигнал становится "невидимым" - как бы выключатся из РЦ?
Было бы здорово сделать такой маневровый Б-С: при поездных аспектах на входном-выходном у него state = -1;, стоит себе тихонько и не мешает, и никаких лишних блок-участков!
Надо протестировать завтра.

vitro 17.10.2016 01:13

А чо если state объявить больше 8? (ну или семи, скок там их) Оно подавится и рухнет, или таки следующему передастся?

vicente 17.10.2016 01:47

[QUOTE=КЕ;537366]Интересно.
А может, в аспектах "минус" тоже не учитывается, и сигнал становится "невидимым" - как бы выключатся из РЦ?
Было бы здорово сделать такой маневровый Б-С: при поездных аспектах на входном-выходном у него state = -1;, стоит себе тихонько и не мешает, и никаких лишних блок-участков!
[/QUOTE]
Костя,я тебе ещё полтора года назад подобную схему предлагал с маневровыми. Перечитай известную тему. Только вместо [B]-1[/B] я на маневровом даю следующий аспект (в случае, если следующий [B]0[/B], на маневровом [B]1[/B]). Из РЦ ты его не вытащишь, функция [B][I]block_state()[/I][/B] будет чётко по NORMAL-ам работать.
Второе. Как ты следующий поездной "ловить" будешь? Конечно, есть [I][B]next_nsig_xx()[/B][/I], но что, если надо не один, а больше маневровых между поездными? [B][I]dist_multi_sig_xx()[/I][/B] можно, конечно настроить, но тогда надо ограждать участки, скажем DISTANCE-сигналами...
Ну, думай, в общем...
:rolleyes:

[size="1"][color="Silver"]Добавлено через 5 минут[/color][/size]
[QUOTE=vitro;537370]А чо если state объявить больше 8? (ну или семи, скок там их) Оно подавится и рухнет, или таки следующему передастся?[/QUOTE]
Можно попробовать. Если в отдельной директории конфигурацию и скрипты писать - ничего не рухнет. Проблема в том, что та версия Open Rails в которой я тестировал это дело видела всё, что больше 7 как CLEAR_2...

КЕ 24.10.2016 02:28

В [I]OpenRails 1.1.1.3487[/I] провёл тест с аспектом [B]state = -1;[/B] (SIGASP_SUB_STOP:D).
Использовал для управления входным с 3Ж через "двухголовый" [U]маршрутный светофор[/U], у которого во 2-м подобъекте такой скрипт:
[B]state = 0;
if ( block_state() != BLOCK_CLEAR )
state = -1;[/B]

Сам [U]входной 3Ж[/U]:
[B]if ( ( next_N == 0 ) && ( next_sig_mr ( SIGFN_NORMAL ) == -1 ) )
{ state =3; draw_state = 4; } // 3Ж[/B]
Работает!:cool:
Только одно правило - для зажигания трёх жёлтых путь сервиса должен заходить за этот маршрутный сигнал (даже если там стоит поезд), иначе его состояние не читается, и на входном будет 2Ж.

vicente 24.10.2016 03:48

Попробуй по-другому "обыграть".
[B]state = 0;
if ( !enabled )
state = -1;[/B]
Тогда путь не должен будет заходить за сигнал. ИМХО -- выигрывает с точкой разворота перед сигналом. Если завести её за сигнал, после освобождения занятой части пути, твой поезд "пропутешествует" на вторую половину. А так -- поедет назад с остановки.

КЕ 24.10.2016 03:57

Этот [I]state = -1;[/I] задумывался как зависимость от занятости пути; но попробую, только уже завтра.

vicente 24.10.2016 04:08

А как ты, скажем, первый МВПС на часть пути примешь, когда вторая свободна? Так ты с двух противоположных направлений можешь их принимать на один путь по 3-м жёлтым вне зависимости от занятости второй части.

КЕ 24.10.2016 08:44

Нет, Олег, и с твоим вариантом не получается. Не видит ОР маршрутный сигнал, если через него не проложен путь сервису. Функция [I]next_sig_mr ( SIGFN_NORMAL )[/I] возвращает ноль, судя по работе входного. По F4 входной показывается последним.
Надо дальше ковырять...

КЕ 24.10.2016 12:00

Ладно; я по-другому "увяжу" маршрутный с входным.
Главное - что аспект "-1" передаётся по РЦ, светофоры его видят и понимают.:)

vicente 24.10.2016 18:08

[QUOTE=КЕ;538251]Нет, Олег, и с твоим вариантом не получается. Не видит ОР маршрутный сигнал, если через него не проложен путь сервису. Функция [I]next_sig_mr ( SIGFN_NORMAL )[/I] возвращает ноль, судя по работе входного. По F4 входной показывается последним.
Надо дальше ковырять...[/QUOTE]
Странно. Должно работать. Сейчас на тестовом пропишу. Табло ставил? Вообще, мне кажется, что с некоторых пор (версий) функция [I][B]next_sig_xx()[/B][/I] глючит. У меня проблемы на выходных с маневровым аспектом [B]RES[/B]. Прописано на следующий [B]RES[/B] давать [B]RES[/B]. А он как-то "ловит" 0.
Вообще вопиющая ситуация была. 3 тепловоза с интервалом в 5-10 минут уходят с одного и того пути станции в депо. За входным на тракционных путях депо - маневровый. Даёт [B]RES[/B], я это вижу, в том числе и по [B]Ctrl+Alt+F11[/B]. Тем не менее, первый и третий уходят по [B]RES[/B], а второй по [B]APPROACH_x[/B] (поездной выходной, прописан давать [B]APPROACH_x[/B] на следующий [B]0[/B])! Пока не могу докапаться до причин

[size="1"][color="Silver"]Добавлено через 1 час 35 минут[/color][/size]
Да. Не передаёт [B]-1[/B]

А вообще, зачем тебе [B]-1[/B]? Ты, вроде, маневровые не делаешь NORMAL... Если делать "свой" линк на такой путь, на след [B]STOP[/B] давать 3ж, на, скажем, [B]SAP[/B] давать 2ж и зажигать синий?

КЕ 24.10.2016 19:01

Табло ставил, и оно нормально срабатывает, вот смотри на скрине:
[SPOILER][url=http://itmages.ru/image/view/5079932/79c81e83][img]http://storage1.static.itmages.ru/i/16/1024/s_1477320835_3332019_79c81e8354.jpg[/img][/url][/SPOILER]
Видно, что сегмент в столбце [B]Nn[/B] с [I]next_sig_mr ( SIGFN_NORMAL )[/I] меньше нуля и не горит.
А вообще я уже без -1 сделаю. 3Ж горит на СТОП, а 2Ж на синий [I]next_state==3;[/I] у маршрутного.

vicente 24.10.2016 21:03

Я бы посоветовал для АЛСН сделать синий на след. красный SAP , а на открытый state = next_state

КЕ 24.10.2016 21:04

1.Синий так и сделал (при галке "КОРОТКИЙ БУ").
2.Вовремя мы отказались от "-1", потому что трафик светофор с таким аспектом лихо пролетает с установленной скоростью!:crazy:
Чур меня!

vicente 24.10.2016 21:23

Ещё бы! Не пролетал... Он [B]CLEAR_2[/B] выдаёт и на монитор и по [B]Ctrl+Alt+F11[/B]. Мы же проверяли это давно. Я подумал сейчас, что он "нижним" под основным виден не будет, а оно, видно, его по аспекту [B]lr[/B] "хватает"

КЕ 24.10.2016 21:34

Да, сейчас погонял, так и получается.

vicente 24.10.2016 21:37

С [B][I]enabled()[/I][/B] его обязательно свяжи
[QUOTE]if (!enabled || (block_state() !=# BLOCK_CLEAR)) {state = 0;}
else if (enabled && (block_state() ==# BLOCK_CLEAR) && (next_state == 0)) {state = 1;}
else if (enabled && (block_state() ==# BLOCK_CLEAR)) {state = next_state ;}[/QUOTE]
Ещё можно обыграть остановку на входном, если "дальняя" половина пути является целью и она занята...

КЕ 24.10.2016 22:10

Интересно. А почему подъехать с закрытому маршрутному нельзя? Путь занят встречным сервисом?
А скрипта "не хватит", у меня там маршрутный 4-линзовый ЖС-КБ.

vicente 24.10.2016 22:32

Ты подъезжаешь к закрытому маршрутному по 3ж входному и К на маршрутном. А что если тебе нужен ВЕСЬ путь, а дальняя часть занята?[QUOTE=КЕ;538326]
А скрипта "не хватит", у меня там маршрутный 4-линзовый ЖС-КБ.[/QUOTE]
Просчитай варианты. Тебе некак открыть маневровый на занятый путь, только "прогон" по свободному (на след RES давать RES, к примеру). Но, в этом случае входной должен быть закрыт. Манёвры с маневрового. Вот тебе идея. Когда путь сервиса проходит [B]через[/B] маршрутный (то есть он - [I]enabled[/I]) и путь за сигналом занят давать RES (+выигрывает и при прицепках), входной на след. RES остаётся закрытым, на след. 0 даёт 3ж, на остальные аспекты, включая 1, на входном 2ж... Как-то так, на скорую руку. Проверь

[size="1"][color="Silver"]Добавлено через 6 минут[/color][/size]
[QUOTE=КЕ;538326]Интересно. А почему подъехать с закрытому маршрутному нельзя? Путь занят встречным сервисом?[/QUOTE]
Если будет встречный сервис, входной будет заблокирован самим симулятором, так что это - не проблема:cool:

КЕ 24.10.2016 22:41

1. Пусть на другой путь принимают :-) Сим ведь длину состава не измерит... хотя если попробовать поставить какой-то оппозитный маркер (они ведь block_state отрабатывают), и считывать его состояние... Тоже тема! :-)
2. Ну как-то так примерно и есть, кроме маневровых - их потом буду гонять.
3. Да, это тоже надо завтра проверить.

КЕ 25.10.2016 20:42

Проверил аспект RESTRICTING - если даже в конфиге 0 км/ч, трафик всё равно его проезжает, как и S.A.P. Только перед сигналом притормаживает не так заметно.

vicente 26.10.2016 03:21

Костя, Костя... Ты всё забыл... :confused:
Конечно, не останавливается. А зачем его рестриктом тормозить? Ты не понял задумку.
Итак.
У нас есть путь, разделённый маршрутным светофором. По трём жёлтым, согласно инструкции, [I]"Разрешается моторвагонному поезду, одиночному локомотиву, мотовозу, дрезине следовать на свободным участок пути с особой осторожностью и со скоростью не более 20 км/ч до маршрутного светофора с красным огнем"[/I] (раньше, кстати, немного не так было). Это - раз! Второе, соответственно, поезд может прибыть на весь путь, будь то пассажирский или грузовой. Ну, и третий вариант - манёвры. Нам нужно три этих варианта "обыграть" по-максимуму и с минимумом дополнительных оговорок.
Наш путь разделён на 2 части маршрутным [B]ЖС-КБ[/B]. При приёме на весь путь мы разобрались, вроде, так? Синий горит, аспекты согласно выходного (на 0 даёт 1, на 2 - 2, на остальные - дублирует следующий аспект), включая маневровый пропуск сервиса по пути с белым 2 на выходном. Условия обычные: путь сервиса проходит через сигнал (enabled) и блок участок свободен.
Теперь при занятости "дальней" части пути (блок не свободен). Прописываем следующее: если путь сервиса не проходит через светофор (точка разворота), на светофоре горит красный, аспект 0! Если проходит, то есть, поезд принимается на весь путь либо мы в маневровом режиме и запланирована прицепка - смотрим выше - аспект 2. Зажечь можно что угодно. У меня горит синий, для зажжения белого я использую функцию контроля приближения. Устанавливаю 50 метров, загорается в зависимости от секций пути, обычно, как только проехал предыдущий сигнал, сразу загорается, если секция длинная (250-500 метров), работает по установленному метражу. Ну, я свой маршрут "кромсаю" как мне удобно, на каждой станции делаю как мне удобно. не суть.
Надеюсь, понятно объясняю)))
Теперь входной. С ним всё просто: [I][B]enabled && block_state ==# BLOCK_CLEAR[/B][/I], аспект согласно обстановке, показания: на следующий 3-7 - два желтых верхний мигает (обычно такие пути с отклонением, если прямо - зелёный), на следующий 1 два (один) жёлтый, на следующий 0 - три жёлтых.
Ну, и "гвоздь программы" [B]на следующий 2[/B] на входном [B]0[/B].
Вот и вся песня!:)


Текущее время: 09:32. Часовой пояс GMT +4.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
© 2001-2019, Администраторы и разработчики Клуба Trainsim