![]() |
[QUOTE=APK-LVDZ;434647]Могу только посоветовать сменить сигнализацию :) У Тимаса есть некоторые недоработки, хотя и от настроек тоже зависит.[/QUOTE]
Понимаешь в чем дело, до видоизменения скриптов ( по причине нехватки того или иного светофора ) - такого не было, родная Тимасовская компоновка работает нормально...Но, маршрут ее принимать отказывается, я удаляю с маршрута все светляки, меняю скрипт и конфиг и пытаюсь снова зайти в редактор, и тут начинается, вернее ничего не начинается - тупо вылет...Есть ли решение для такого косяка? |
Если вылет происходит после подмены скриптов, то значит удалены не все сигналы. Это можно найти через тот же редактор сценариев. Реже, но тоже бывает, остаются маркеры, которых в редакторе маршрута нет. Это лечится удалением секции пути с невидимым маркером.
|
[QUOTE=APK-LVDZ;434656]Если вылет происходит после подмены скриптов, то значит удалены не все сигналы. [/QUOTE]
Нашел, снес, пока обойдусь без сигналки...Слишком много светофоров не хватает... |
[QUOTE=APK-LVDZ;434656]...бывает, остаются маркеры, которых в редакторе маршрута нет. Это лечится удалением секции пути с невидимым маркером.[/QUOTE]
Было такое, видны только в AE. |
Такой маркер обычно легко отлавливается в W по параметру высоты, там будут значения эдак в 100-800 метров, может быть и минус, установить в W ноль или сколько там на тайле, зная TrItemId из W найти в текущей БД маршрута и тоже поправить высоту - вылезет, куда он денется =)).
|
Ух как сложно, ищите более простые пути :). Переместить секцию пути куда проще, чем искать всё это в бесконечном потоке символов.
|
Есть же Notepad2 и Search and Replace =)).
Проблема в том, что секцию не всегда быстрее удалить, это может быть секция А4 с еще тремя и более светофорами, может быть "вправленная" руками для качественного стыка. Два одномоментных изменения в БД за одно сохранение (секция и светофор) тоже очень айс, но это будет важно только в случае сбоя. |
Игорь, спасибо за подсказку, про высоту не знал... на днях была [URL="http://www.trainsim.ru/forum/showthread.php?p=438453#post438453"]похожая тема[/URL] - удалял, как писал Алексей.
|
Ребята, а однопутка вообще может быть 3АБ? Я думал что у меня в маршруте часть под полуавтоматом, но на фотках увидел 3-х линзовые светляки на однопутке в обоих направлениях...И как происходит расстановка в данном случае?
|
[QUOTE=Seafarer;447096]Ребята, а на однопутке вообще может быть 3АБ? И как происходит расстановка в данном случае?[/QUOTE]
Ещё как может! Есть у нас в Казани такой участок (Казань-Пасс - Дербышки), обычная трёхзначная блокировка стоит. В таком случае светофоры ставятся так же, как двухпутном участке, для обоих направлений движения (по обоим сторонам полотна). Но с учётом того, что проходные светофоры как бы взаимно блокируют друг друга. Т.е если для одного направления дан "зелёный", для встречного будет "красный". В остальном, всё то же самое, что и на двухпутке. Подтверждение - мой маршрут Светлоярск, там на однопутках как раз 3АБ стоит. |
Действительно, однопуток с автоблокировкой полно.
[QUOTE=Agis;447102]. Т.е если для одного направления дан "зелёный", для встречного будет "красный". В остальном, всё то же самое, что и на двухпутке. [/QUOTE] Не совсем так. Автоблокировка может находится в одном из двух направлений. При этом на светофорах встречного направления огни гаснут. Это реализовано в сигналке [B]APK_LVDZ[/B]. |
[QUOTE=Agis;447102]Но с учётом того, что проходные светофоры как бы взаимно блокируют друг друга. Т.е если для одного направления дан "зелёный", для встречного будет "красный". В остальном, всё то же самое, что и на двухпутке.[/QUOTE]
В реале сигналы встречного направления погашие! |
[QUOTE=Yurik;447186]В реале сигналы встречного направления погашие![/QUOTE]
Да. Вот у нас раньше участок Монино - Фрязево был 1-путный, всё именно так. Стоим, ждём пригородный, смотрю - вдалеке проходной погас - ага, сейчас оттуда на Москву электропоезд пойдёт!:) В МСТС их тоже можно погасить, если в скрипте прописано [B]enabled! [/B] (выключён) без огней. |
[QUOTE=Yurik;447186]В реале сигналы встречного направления погашие![/QUOTE]
Хотя в справочной литературе по СЦБ написано, что существуют системы, как с гашением встречных сигналов, так и с перекрытием на красный. Но последние менее экономичны, поэтому, наверное, применяются реже(или совсем редко). |
[QUOTE=КЕ;447190]В МСТС их тоже можно погасить, если в скрипте прописано [B]enabled! [/B] (выключён) без огней.[/QUOTE]
Если бы так... В МСТС гасится "через Копенгаген". Там кучу условий нужно прописать, чтобы "отловить" ту самую ситуацию. В Open Rails эта функция работает иначе и погасить светофоры противоположного направления довольно легко |
Где-то в мануалах по ОР было про аспект [B]state = -1;[/B], но не могу найти, где... как его использовать, и какие типы (NORMAL, SHUNTING...) могут с ним работать?
|
В мануалах? Аспект? Не помню.
На буржуйских форумах некоторые индивидумы (в основном, итальянцы) активно возмущались тем,что в Open Rails этот аспект, как раз-таки , НЕ РАБОТАЕТ. Вроде, пофиксили. Не знаю точно. Мы же с тобой этот аспект тестировали и в МСТС и в ОР. На локомотивный выдается неконтролируемый аспект. С тех пор я этот -1 забросил. В мануале есть другое по -1. Но, речь там не об аспекте, а о параметре SignalNumClearAhead. Это -- да. И на своей сигнализации оно у меня используется почти что везде. |
А как SNCA может быть отрицательным??? В чём хитрость?
|
Хитрости никакой нет. Просто прописана новая возможность для программирования сигнализации. При SNCA = -1 сигнальная точка (c -1) не учитывается при вычислении SNCA остальных светофоров.
|
Интересно.
А может, в аспектах "минус" тоже не учитывается, и сигнал становится "невидимым" - как бы выключатся из РЦ? Было бы здорово сделать такой маневровый Б-С: при поездных аспектах на входном-выходном у него state = -1;, стоит себе тихонько и не мешает, и никаких лишних блок-участков! Надо протестировать завтра. |
А чо если state объявить больше 8? (ну или семи, скок там их) Оно подавится и рухнет, или таки следующему передастся?
|
[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... |
В [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Ж. |
Попробуй по-другому "обыграть".
[B]state = 0; if ( !enabled ) state = -1;[/B] Тогда путь не должен будет заходить за сигнал. ИМХО -- выигрывает с точкой разворота перед сигналом. Если завести её за сигнал, после освобождения занятой части пути, твой поезд "пропутешествует" на вторую половину. А так -- поедет назад с остановки. |
Этот [I]state = -1;[/I] задумывался как зависимость от занятости пути; но попробую, только уже завтра.
|
А как ты, скажем, первый МВПС на часть пути примешь, когда вторая свободна? Так ты с двух противоположных направлений можешь их принимать на один путь по 3-м жёлтым вне зависимости от занятости второй части.
|
Нет, Олег, и с твоим вариантом не получается. Не видит ОР маршрутный сигнал, если через него не проложен путь сервису. Функция [I]next_sig_mr ( SIGFN_NORMAL )[/I] возвращает ноль, судя по работе входного. По F4 входной показывается последним.
Надо дальше ковырять... |
Ладно; я по-другому "увяжу" маршрутный с входным.
Главное - что аспект "-1" передаётся по РЦ, светофоры его видят и понимают.:) |
[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ж и зажигать синий? |
Табло ставил, и оно нормально срабатывает, вот смотри на скрине:
[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] у маршрутного. |
Я бы посоветовал для АЛСН сделать синий на след. красный SAP , а на открытый state = next_state
|
1.Синий так и сделал (при галке "КОРОТКИЙ БУ").
2.Вовремя мы отказались от "-1", потому что трафик светофор с таким аспектом лихо пролетает с установленной скоростью!:crazy: Чур меня! |
Ещё бы! Не пролетал... Он [B]CLEAR_2[/B] выдаёт и на монитор и по [B]Ctrl+Alt+F11[/B]. Мы же проверяли это давно. Я подумал сейчас, что он "нижним" под основным виден не будет, а оно, видно, его по аспекту [B]lr[/B] "хватает"
|
Да, сейчас погонял, так и получается.
|
С [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] Ещё можно обыграть остановку на входном, если "дальняя" половина пути является целью и она занята... |
Интересно. А почему подъехать с закрытому маршрутному нельзя? Путь занят встречным сервисом?
А скрипта "не хватит", у меня там маршрутный 4-линзовый ЖС-КБ. |
Ты подъезжаешь к закрытому маршрутному по 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: |
1. Пусть на другой путь принимают :-) Сим ведь длину состава не измерит... хотя если попробовать поставить какой-то оппозитный маркер (они ведь block_state отрабатывают), и считывать его состояние... Тоже тема! :-)
2. Ну как-то так примерно и есть, кроме маневровых - их потом буду гонять. 3. Да, это тоже надо завтра проверить. |
Проверил аспект RESTRICTING - если даже в конфиге 0 км/ч, трафик всё равно его проезжает, как и S.A.P. Только перед сигналом притормаживает не так заметно.
|
Костя, Костя... Ты всё забыл... :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