Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Технический флейм » Перфоратор ленточный ПЛ-80 |
<<Назад Вперед>> | Страницы: 1 2 * 3 4 5 | Печать |
1Ж24Б
Advanced Member
Откуда: Kaluga Всего сообщений: 349 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 нояб. 2014 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 25 июля 2017 12:38 Сообщение отредактировано: 25 июля 2017 12:46
Сегодня сравнил набитый тест ЭПМ с эталоном - сходится. Заодно припомнил, почему не хотел на скорости 80 знаков перфорировать. Пружины, подтягивающие якоря электромагнитов, за тридцать лет ослабли и при длительной работе на полной скорости могут появиться ошибки, лишние "1", т.е. отверстия. Замены из ЗиПа для ПЛ-80 нет и не будет. ММ, я понимаю, что для законченности устройства надо программу для ПК писать, но поставленные задачи в настоящее время перфоратор выполняет. CodeMaster, может осенью соберу на макетной плате. FS1501 может работать в режиме "старт-стоп", что и реализовано на плате В1. Поставить МК и заставить отсылать всё, что прочиталось на перфоленте, на ПК. П.С.: http://www.elsikor.ru/free.html здесь можно скачать и посмотреть программу и схему для подключения перфоратора к LPT. |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 25 июля 2017 15:33 Сообщение отредактировано: 25 июля 2017 18:43
(1) Рекомендую снимать CTS не в момент, когда буфер полностью заполнится, а когда степень его заполнения подойдёт, например, к 70% (т.е. 40 байт, например). Суть в том, что ПиСишка не обязательно отреагирует на снятый CTS мгновенно, даже если управление потоком там выполнено аппаратно (если программно - то тем более). Но даже если она отреагирует и мгновенно, то всё равно в регистре сдвига COM-порта к этому моменту, с некоторой вероятностью, уже может быть новый, 65-ый, байт на передачу, который будет выброшен в линию (даже при снятом сигнале CTS). Если между байтами вставлять задержку (Вы упоминали про 32 мс), то как бы Вы просто снижаете вероятность такой коллизии... Если я вообще правильно понимаю, что и как у Вас там устроено... В общем, лучше снимать CTS заранее. [upd] ... или Вы в программе на Писишке передаёте файл чанками строго не более, чем по 64 байта?? Устанавливать CTS можно, когда (1) закончили передачу на перфоратор принятых байт, и (2) выждали интервал ещё одной строки на перфораторе, и (3) после этого ещё выждали небольшую паузу на дозарядку конденсаторов в фильтре блока питания. Думаю, 50-100 мс вполне хватит. // снимать-устанавливать CTS после каждого байта, наверное, смысла не имеет (2) Тот факт, что перфорация идёт в период времени, когда данные по COM-порту не передаются (и наоборот) — это хорошо, т.к. от работы перфоратора может идти помеха на линии RS-232. Но, важно понимать, что даже когда контроллер снял сигнал CTS и ПиСишка перестала передавать контроллеру данные, из-за наводок в интерфейсе RS-232 порт контроллера может "принимать" лишние байты (т.е. как бы снятый CTS он ещё не запрещает порту контроллера что-либо принимать, порт в этом плане живёт независимо). Если это никак не контролируется в Вашей программе, то как бы вот — это может сносить ей голову, затирать буфер и пр. Поэтому желательно не просто снимать CTS, но ещё и: 1) после снятия CTS дизаблить UART на контроллере — и только после этого начинать перфорировать 2) разрешать UART на контроллере после того, как перфорация завершена и выждали все паузы — и после этого только устанавливать CTS Если есть возможность/желание, то вместо RS-232 лучше использовать "токовую петлю". В общем, это тот же RS-232, но только не "потенциальный", а "токовый". Он намного более устойчив против помех. Оптическая развязка тоже не помешает. (3) 1Ж24Б написал: 1Ж24Б написал: Если просто записать в МК вывод байтов (реализовано в тестовом режиме) на перфорацию, всё нормально; Я правильно понимаю, что проблема возникает ТОЛЬКО тогда, когда Я пробовал модифицировать программу, чтобы просто выводить вместо перфоратора информацию на пару семисегментных индикаторов. Работало до последнего байта; (1) байты в контроллер поступают из COM-порта — AND — (2) байты физически выводятся на перфоратор Так? 1. Повторю вот этот пункт — его очжелательно сделать: -- попробуйте посмотреть, что по факту передаётся в канале от ПиСишки на контроллер. Для этого можно использовать любую программу чтения из COM-порта (например, RealTerm). Возможно, что последние байты на самом деле передаются криво или не передаются вообще [udp] или же передаётся больше, чем 64 байта... 2. Предлагаю попробовать ещё вот что: -- берём Вашу прошивку как есть — т.е. в варианте, когда байты принимаются по COM-порту и отправляются на перфоратор, и когда между байтами вставляется задержка 1 мс -- но добавляем в неё небольшую процедурку, которая ПЕРЕД тем, как начать тарахтеть перфоратором, скидывает весь массив обратно в COM-порт (разумеется, ПиСишка должна принять эти байты — а у Вас будет возможность сравнить их с тем, что должно было быть передано, и что будет отперфорировано) Почему я предлагаю именно эти два шага? --- очень просто, сперва необходимо локализовать место возникновения проблемы. Надо понять, виновата ли ПиСишка, которая передаёт "не то"... виноват ли интерфейс между ПиСишкой и контроллером, или же неправильно устроена синхронизация контроллера с перфоратором... или, может, перфоратор наводит помеху на интерфейс RS-232....... [upd] Как совсем альтернативный вариант, можно ещё xmodem протокол реализовать. Протокол простейший. Имеет встроенный механизм нарезки файла на пакеты фиксированной длины, механизмы проверки контрольной суммы, акноледжмента не-/получения пакета, повторной передачи битого пакета. Когда-то давно использовался для передачи файлов (точнее, бинарных массивов) по модемным линиям. Аппаратное управление потоком не требуется, т.к. протокол на стороне отправителя всегда ожидает акноледжмент от получателя после передачи каждого пакета. На ПиСишке он поддерживается программой HyperTerminal (только там, вроде, размер пакета больше, чем 64 байта... не помню уже). https://en.wikipedia.org/wiki/XMODEM |
1Ж24Б
Advanced Member
Откуда: Kaluga Всего сообщений: 349 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 нояб. 2014 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 26 июля 2017 13:29 Сообщение отредактировано: 26 июля 2017 13:34
Сделал тестовую программу для МК с сигналом CTS за 10 байт до окончания блока в 64 байта. В итоге, после пробивки первых 64 байтов, процесс дальше не идёт. Сделал на пробу в МК буфер на 64 байта, чтобы при приёме шло заполнение этого буфера полностью, только потом перфорация. На стороне ПК в программе пробовал блоки в 1, 16 и 64 байта, корректируя программу МК. Считаю, дальше пока смысла разбираться нет - у МК от монтажа/демонтажа уже ножки изогнулись (на плате цанговая панелька). Оставлю пока такой вариант работы с перфоратором. Разберусь с другими проектами, попробую ещё варианты программы. xoiss, спасибо за рекомендации. Изменю эл. монтаж на плате (надо подключать проводами передатчик из состава MAX232 и разводить выход с МК) и попробую передачу принятых байтов. [upd] ... или Вы в программе на Писишке передаёте файл чанками строго не более, чем по 64 байта?? Ещё фотографии: - вид со стороны электромагнитов, управляющих движением пуансонов (с противоположной стороны ещё пять штук). - механизм, формирующий сигналы для синхронизации. И видео работы. Идёт перфорация теста ПУВВ. ПЛ-80 - видно как вспыхивает на короткое время верхний светодиод, указывая на разрешение передачи ПК. |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
1Ж24Б написал: ... его ж ведь можно без вынимания программировать ... у МК от монтажа/демонтажа уже ножки изогнулись (на плате цанговая панелька) https://habrahabr.ru/post/97703/%E2%80%8E/ http://www.microchip.ru/phorum...mp;t=82679 |
1Ж24Б
Advanced Member
Откуда: Kaluga Всего сообщений: 349 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 нояб. 2014 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 27 июля 2017 19:24 Сообщение отредактировано: 31 июля 2017 16:41
Ну так нет места под контакты и перемычки. Надо переделывать половину монтажа. Итак, скопировал ленты: ТЕСТ АРИФМЕТИКИ 8.842.006-01 ОТК ТЕСТ КОМАНД П3 8.842.006-02 ОТК ТЕСТ ПРЕРЫВАНИЙ 8.842.006-03 ОТК КОМПАРАТОР 8.842.006-07 ОТК АБСОЛЮТНЫЙ ЗАГРУЗЧИК 8.842.006-15 ОТК ТЕСТ ЭПМ 8.842.007-23 ОТК ТЕСТ ПУВВ 8.842.007-24 ОТК Считывание лент на GNT 28 и сравнение с исходником не выявило ошибок перфорации Надо как-то либо найти остальные ленты из поставки к "Электроника-60", либо кого-то уговорить считать и выложить в формате *.bin П.С.: соединил перфоратор со считывателем GNT-28 напрямую кабелем. Ура ! Получилась установка для копирования перфолент. Единственное, надо "допилить" приём информации в буфер перфоратора, чтобы не тормозил, если не заполнил весь буфер. Ленты то разные бывают. Вот вам и копировальщик ленты с отечественным перфоратором... |
1Ж24Б
Advanced Member
Откуда: Kaluga Всего сообщений: 349 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 нояб. 2014 |
Кто знает, что за расширение файлов *.fsu ? Как это в обычный *.bin преобразовать ? Нашёл Бейсик с перфоленты от Андрея Кислова (владелец "Электроника-100/25" из Алма-Аты), а там такое |
Кай
Гость
Divine Assassin Откуда: извне (from beyond) Всего сообщений: 13709 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 8 авг. 2010 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 31 июля 2017 18:04 Сообщение отредактировано: 31 июля 2017 18:07 А можно приложить кусок, или весь файл? Может это текстовая экзотика, где 8 дорожек построчно, в которых "Х" = "отверстия нет", а "O" - "отверстие есть". Или наоборот. Кто знает, что за расширение файлов *.fsu ? Как это в обычный *.bin преобразовать ? |
1Ж24Б
Advanced Member
Откуда: Kaluga Всего сообщений: 349 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 нояб. 2014 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 9 августа 2017 11:37 Сообщение отредактировано: 9 августа 2017 11:38
Вот Бейсик http://www.tis.kz/progs/dvk/FSU/BASIC.FSU Как с ним быть ? |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 9 августа 2017 13:26 Сообщение отредактировано: 9 августа 2017 15:37
Как понял, это из коллекции Andrey_Ak из соседней темы. http://www.phantom.sannata.ru/...4#pp236284 По содержимому похоже на ПЗУ ДВК Бэйсик из КР1801РЕ2-013 http://zx-pk.ru/threads/17417-basic-dvk.html Насколько помню, ПЗУ-Бэйсик была адаптация перфоленточного (изменен загрузчик). Этот вероятно тоже можно запустить в SIMH, только там скорее всего надо отрезать перфоленточный заголовок. Upd Формат файла - для абсолютного загрузчика http://www.retrocmp.com/storie...aper-tapes http://decuser.blogspot.ru/201...d-way.html Таких образов в формате .ptap с буржуйскими программами похоже много и SIMH их понимает. |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 9 августа 2017 18:28 Сообщение отредактировано: 9 августа 2017 18:34
Вобщем формат BASIC.FSU правильный, но что-то не подобрать машину, на которой оно запускается, вроде как Электроника-100/16И sim> g Трапается вместо запуска. Если после *O Нажать Enter - сразу трапается.Бержуйский перфоленточный Бэйсик запускается. |
<<Назад Вперед>> | Страницы: 1 2 * 3 4 5 | Печать |
Полигон-2 » Технический флейм » Перфоратор ленточный ПЛ-80 |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |