"Лего-кирпич" из Мега2560

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Зарегался на ютубе наконец-то. https://www.youtube.com/watch?v=_JLhrw7SeGA видео нашей подготовки на базе "Ардуино как Лего" ..

 

А это наш второй финальный заезд на отборочных соревнованиях .. https://www.youtube.com/watch?v=4fe1D4Du_-E&feature=youtu.be

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Ну .. в общем, "Адская колесница ГП" поехала. На 2-х аккумах едет примерно на 6% медленнее чем предыдущий вариант из Лего на 3-х. Все настройки программы в этом режиме работают без изменений.. в общем, похоже что-то получилось.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

В общем, поехали и на 3-х аккумах, но пока как-то странно: вместо ожидаемых 6.5 - 7 сек имеем .. все те же 10-11. В общем, время кончилось, что успели - то успели.

Ссылка на прямую трансляцию с Робофест-2017 16-17 марта: https://www.youtube.com/c/Robofest может и нас покажут .. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Ну вот и вернулись с Общероссийского Робофест-2017. Заняли первое место на квалификации с результатом 8.72сек, третье место в финале и, надеюсь, поголовный приз зрительских симпатий всех тренеров команд, наблюдавших наши тренировки, заезды и финалы.

Всем огромное спасибо, за дружескую поддержку, а где-то даже и помощь. Особенно организаторам этого Фестиваля. Да, да вот так вот, с большой буквы. Слов нет насколько все замечательно и профессионально организовано.

Детальный отчет выложу попозже, но предупреждаю сразу что у меня более-менее снято только 1 видео со второй квалификации. Если у кого есть видео материалы с нашего первого заезда и финалов - буду очень признателен, пишите на мыло: arhat109@mail.ru

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Для начала отчета - таблица результатов: (наш номер HRAsh-38)

Ну и "наш герой", так сказать "первый" и "последний" кадры:

В качестве приза получен .. STM32F405 от Амперки в формате Arduino UNO - плата "Искра". :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Ну, а теперь .. начну пожалуй несколько "заранее", ибо победили мы не благодаря мифической фортуне, а наверное больше "вопреки"... ;)

И так, раньше уже писал, что пришлось в срочном порядке лепить новую инкарнацию под названием "Адская Колесница ГП" и нам это удалось. Вскоре она была переименована в "Адская колесница ПМ" (из подручных материалов) по настоянию сына (-"Ну .. папа, это же не вежливо! Как я это скажу вслух, а она обидится и не поедет") и, соответственно, появилось ответвление ПО с таким именем. :)

В общем, когда мы вышли, что называется на финишную прямую и уже были уверены что "успеваем" .. наш герой внезапно закуксился и .. слег с температурой 38.9. И это за три дня до вылета! Я посыпал голову пеплом и всем что попадалось под руку .. впрочем, этим же и лечили в срочном порядке. В результате, в какой-то момент времени (полегчало), ребенок лежал с температурой на своем втором ярусе своего "мамонта", смотрел на прохождение трассы сверху и давал указивки, что и где в его программе надо подправить, а "тренер" бегал вокруг трассы, ловя тележку (чем регулярно смешил сына) и правил программу, попутно задавая вопросы типа "а тут нафига так наворочено?" .. поехало. Лучшее время в режиме 2S = 9.5сек. Понятно, что снимать было некому.. и стало понятно что прыгнуть выше(меньше) 8.5-9.0сек., на двух аккумуляторах не получится. Переделывать тележку уже некогда вот от слова "совсем"... благо блок аккумов был сразу сделан под 3S.

В последний день перед вылетом, температура спала и он опробовал режим 3S .. долго ловили тележку по комнате, наконец ей удалось забиться в угол и встать на датчике препятствия .. странно, но вроде можно ехать быстрей (писал выше). До самого вечера, вдвоем боролись за режим 3S .. удалось установить "личный рекорд тележки Адская Колесница ПМ" в районе 8сек .. насколько можно замерить старым советским секундомером "с руки" (+- 0.2сек) с потерянной реакцией и остекленевшими глазками от усталости, недосыпов и т.д. На этом решили "хватит" и стали собираться в путь.. в тот день был (задним числом припомнили) "первый звоночек" - вн. мотор стал как-то нехорошо подсвистывать и .. мы поменяли моторы местами, на чем и успокоились.. Весь багаж распределили в 2 сумки "ручная кладь" по 4.5кг каждая .. старались и даже взяли с собой поле и кучу запчастей.

Ура, вылет! .. проходим досмотр и упс .. "а что это у вас лежит такое в коробочке, в самом низу?" .. -"Э-э-э .. инструменты." .. -"?!? какие?" -"Ну там, канц. нож, плоскогубцы, круглогубцы, кусачки, пинцет, шило, ножницы .. и о, это - паяльник" ..-"Всё это надо сдавать в багаж".

Афигеть! Билеты невозвратные, безбагажные, куда и как это все теперь оформлять, доплачивать .. в общем у меня тихая истерика: "Э-э-э, оно все же мелкое, Вы же видели .. ребенок в Москву едет на общероссийские соревнования по робототехнике, ну вы же видели там робота в коробке .. первый раз .. куда нам теперь двигать, да как эту, одну коробочку "сдать багаж"?" -"Ладно, идите. В следующий раз - сдаете в багаж" .. Уф. Повезло таки.

Полет, приземление, поездка в гостиниицу, заселение .. в общем прошло "без эксцессов"... идем в номер и .. упс. В коридоре, на ковре сидит команда и разбирает на поле ситуации по Ардуино сортировщику .. конкуренты в соседнем номере, "вот тебе Ваня и Юрьев День" .. -"А тут нас много. Есть из Калининграда, Владивостока...", в общем "приехали". Ребята оказались из Краснодара и их представитель в итоге и взял второе место. Забегая вперед, с нашей стороны, мы бы ещё дали приз за самую красивую тележку. Раскрутив поле, там же в коридоре опробовали наш "медленный" вариант и, к своему удивлению, получили что-то около 14сек. Но потом, обдумав, сообразили что это из-за ковра и успокоились.

Весь московский вечер 15 марта, мы искали место где можно "укромно" покатать тележку на твердом покрытии .. таки нашли: на цокольном этаже, возле уже закрытой столовой был кафельный пол. Недостаточно ровный, но все же "сойдет". И мы начали свои последние тренировки. Тут было обнаружено, что медленная программа (перенос версии 2S на 3S с тупым понижением предельных скоростей ШИМ) на свежезаряженных аккумах вполне устойчиво идет .. 8.5сек. Но дальше снизить время прохождения трассы без подключения "предсказателя поворотов" - никак.

Надо пояснить что за предсказатель поворотов "ойка". Конечный автомат, имеющий переменную состояний с названием "oys" и увеличивающий номер состояния по достижению очередного "критически важного" фактора. Как-бы "ой", "ой-ёй", "ой-ё-ёй" .. :) Первым таким фактором было прохождение по линии со скоростью, выше "критической" времени больше заданного. У нас это время позволяло пройти на предельных скоростях 20-25см трассы. Если срабатывал "первый ой", то автомат переходил к контролю следующего и так далее. Если все "ойки" срабатывали, то последним действием этот КА включал режим "тормози, зараза!" и останавливал машинку на 20-50 миллисекунд за 3 попытки (практически в режиме ABS). Весь автомат придуман ребенком, терминология автора. Забегая вперед: так и не был применен на соревновании ни разу, как оказалось позже.

В общем, с "ойкой" машинка шла по трассе как "влитая" и удалось стабилизировать прохождение трассы за 8-8.5сек, что нас полностью устроило, да и уже валились с ног из-за разницы во времени и перелета. Прокатав 5 или 6 кругов без остановки, посовещавшись, решили прокатить "ещё раз" слегка подняв предельные значения ШИМ, так .. "на всякий случай" .. интересно жеж! Тележка прошла круг за 7.2сек с вылетом за трассу и раздался второй "звоночек": что-то достаточно громко "хрустнуло". Повертев тележку и так и сяк и ничего не обнаружив, мы пошли в номер. Стратегически, поскольку предполагалась только 1 квалификация, я настоял чтобы он оставил на переключателе 2 версии настроек программы: "быстрая с ойкой" (8.5сек) и "медленная без" (9-10сек). И ушли спать.

Утро 16 марта. Подъем по Новосибирскому времени .. блин, рано .. 5 утра .. аккумы заряжены, "а давай проверим" .. тихо, чтобы никого не разбудить, спускаемся к кухне и .. внутреннее колесо едет отдельно от тележки. Вот оно что "хрустнуло" - отклеилось .. ща мы тебя .. возвращаемся в номер, приклеиваем, восьмерит странно, долго мучаемся вдвоем и наконец-то ждем пока высохнет. А пока - сбор. Решили, что никаких инструментов мы не берем (все и так просто отлично) и тут я натыкаюсь на запасную резину для колес .. сравниваем и принимаем решение "пора менять резину". Меняем. Одно колесо (внешнее) смена прошла нормально. Второе колесо .. упс. Оно отваливается и мы смотрим на него остекленевшими глазами: офигеть!

Пластик ступицы колеса рассыпался на 3 части .. запасного диска нет, они собраны из двух разных частей .. *опа. Приплыли, идти некуда.

поморгав оторопевшим взором, приходим к мысли что надо попытаться склеить ступицу, но я очень хорошо понимаю что "центровке" и надежности прохождения трассы пришел легкий пушной зверек .. аккуратно, пинцетом (один держит, второй клеит) собираем ступицу "по частям" заново приклеиваем колесо, борясь с восьмерками и идем завтракать. После завтрака, тупо идем на соревнования "а будь что будет, надоело"..

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

занятное чтиво)) я не пошел смотреть. работы вагон, не отпустили бы на роботов посмотреть

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Продолжение :) "Соревновательный день" (ч.1)

Выходим из гостинницы "Катюша" и .. обнаруживаем длинную кавалькаду "идущих вдаль" взрослых вперемежку с детьми и сумками с роботами .. как потом узнал у администратора: -"Вы не поверите! У меня 280 номеров и все заполнены практически только вашими соревнованиями!" :)

Пришли (в таком потоке - не промахнешься). Стойка регистрации, предоставление документов и .. упс:

-"А где приказ на сопровождение?"

-"?!? какой ещё нафиг приказ? Мы - семейная команда, я - отец .. я должен его сам себе выдать что-ли? Да и на форуме было разъяснение что в нашем случае он не требуется.."

-"Извините, но мы не можем Вас зарегистрировать без приказа. Хотя .. подождите". Девушка набирает кому-то, разговариавет, обрисовывает ситуацию .. я "на взводе" уже часа как два .. нормально: "всё что могло случиться - уже случилось" пошло то, что случиться ну никак не могло ..

В конце-концов к нам подходит ещё одна сотрудница и спокойным голосом объявляет: -"Не переживайте, все нормально. Пройдите на стойку информации, возьмите бланк расписки и заполните его. Стойка - там" машет она неопределенно вдаль ко входу .. ну хоть тут "всё учтено могучим ураганом". Прошли регистрацию, пошли искать свое место .. 1,2, ... 33. Наш номер "38" .. упс. А усё, столы закончились, однако. Есть ещё целый ряд столов "без номеров" .. наши? Спрашиваю, и внезапно оказывается что столы переставлены так, что часть ряда "у стены" продолжает последующие номера, а не идет нумерация "последовательно" .. нашлось наше место. Рассаживаемся, последние наставления (в основном по тактике поведения на квалификации), фотаю уже рассевшихся конкурентов (точнее машинки, потом рассмотрим) и выхожу из тех. зоны. НАКОНЕЦ_ТО...

Тренировка. Зона была оформлена очень неплохо: 3 ряда столов для участников и между рядами расположены поля для тренировок. Поля размещены на полу, чтобы не ловить роботов. Очень практично. Жаль только что от этих полей до тех мест, где можно было расположиться слишком далеко, поля на полу и закрываются соревновательной зоной, толпящимися детишками и .. ничего не видно, от слова "почти совсем". Попытка снять кино его первой тренировки оказалась "почти бесполезной" добрую половину пути робота не видно вовсе. Ладно, ходим кругами, курим, сидим .. в общем "ждем-с".

И тут, внезапно вижу что наш герой бодрой походкой идет ко входу (охраняемому) в тех зону и интенсивно машет мне ручкой. Подхожу. Девушки стоят "грудь наперевес", не пускают. Нельзя.

-"Можешь принести зарядник, Я аккумуляторы посадил?"

-"Общаться нельзя"

-"Но зарядник-то ему передать - можно?"

-"Ага".

-"А ещё, папа .. у меня кажется сгорел мотор. Не могу понять: он то работает, а то нет, и его надо крутануть рукой чтобы поехал. Но ты, принеси зарядник, а я пока мотор посмотрю.." (разворачивается и уходит)

... вот когда бьешься башкой о что-то твердое - "искры из глаз" летят .. Знаю, пгобовал. Правда давно уже. :) Но вот чтобы видеть "искропад" вот так, стоя на ровном месте .. не, ещё не приходилось. Это - финиш. Не, теоретически "не совсем" в арсенале запчастей есть пара запасных моторов .. но они же не подготовлены .. как пришли голые с Али так и прихватили "на всякий пожарный" .. в принципе провода есть, кондеры может снять с горелого .. но, блин! ВСЕ ИНСТРУМЕНТЫ - В ГОСТИННИЦЕ!

.. "ноги в руки" и бегом 1.5км "туда и обратно" .. стар уже, да и курилка со стажем .. принес. Прихватил "все", на всякий случай .. там разберемся, что ему понадобится.. Выходит ко входу.. я, понятно, весь "в мыле" .. старая загнанная лошадь с языком за плечом..

-"Пап, он короче точно сгорел, я его разобрал - вот смотри, вместо щеток что у него.."

-"нельзя общаться"

-"А докладывать тренеру тоже нельзя или в присутствии судьи и волонтеров?"

-"Ну .. пусть расскажет" (нам же тоже интересно :) )

-"Ты зарядник - принес?"

... и тут я понимаю, что это "шанс" и отдаю ему ВСЮ СУМКУ: "тут - ВСЁ, можно отдать ребенку то, чего он забыл?".

-"можно".

...

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

... передаю ему всю сумку.

-"там есть запасные моторы. Запаяй ТОЧНО ТАКЖЕ как эти. Ничего не перепутай". Герой молча кивает головой и уносит сумку..

-"паять нельзя".

.. далее идет длинная перепалка на предмет "как это? это же Ардуино и вообще у него все контакты запаяны, как же он будет соревноваться" .. в общем, разошлись каждый при своем мнении, и оказалось что это "последнее изменение в регламенте", которое мы пропустили. Посмотреть негде, ладно .. разберется. Забегая вперед - справился и без пайки.

Тут надо дать отступление по мотор-редукторам. Делались они конечно же полностью мною, поскольку монтаж шестеренок редуктора требует точности позиционирования менее 0.1мм, что ребенку в возрасте 10лет как-бы не под силу, да и не входит в программу. Все пользуют тупо покупные мотор-редукторы, а в той гонке по переделке - заказывать что-то было нереально, писал уже. Отдирать лего детали от наших "профи" перемотанных и собранных в т.ч. и его руками "синих моторов" - у меня рука не поднялась. Да, там стоят угольные щетки и имея сопротивление якоря в те же самые 4.3 ома, они не в пример надежней и при меньших габаритах имеют практически параметры даже и получше пожалуй .. но все-таки жалко детский труд. Поэтому для изготовления этих мотор-редукторов были взяты типовые круглые моторы диаметром 24мм (их и было как раз 4шт), купленные на Али "про запас". Проблема заключалась в том, что на 3S (12.6в) моторы получали пусковой ток под 3А, что для них оказалось просто "смертельно". Понадеялся что на соревнование хватит, а дальше тележка все равно не нужна. Не хватило..

Анализируя постфактум всю ситуацию, пришел к выводу что отгорали они уже давненько но "держались"... вот они те самые "звоночки" мать их...

вторая проблема заключалась в том, что к моторам были припаяны старые, советские конденсаторы по 100нф х 50в и они имели "габарит" такой, что лезли в корпус мотор-редуктора только "с пинками" .. положение их установки было единственным. Сумеет ли наш пострел припаять их как надо? А иначе они тупо не встанут в корпус.. в общем, он провозился практически до конца тренировки и пошел на тренировочное поле минут за 10 до окончания .. я все это время "пил валерьянку" (ходил курить, кругами .. нашел где дают и выпил 3 чашки кофе Американо местного розлива .. гадость редкая).. Но, таки успел и тележка даже поехала .. правда нехорошо дергаясь на поворотах. Он до карантина успел прогнать тележку раза 3, не более...

(продолжение следует .. пошел допивать пиво..)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Соревновательный день. ч.2. Первая квалификация.

Все тренера, кто присутствовал сумели рассесться перед 2-я соревновательными полями и началось: первый .. мимо, второй .. мимо, третий поехал. Время, блин! какое время? 14.43сек. Уф, плохо. Точнее хорошо. -"Как это плохо? Первый кто проехал, да и 14.5сек - хорошее время." - сосед слева. следующий -мимо, и так далее .. вроде проехал ещё один, но видно что тоже не быстро. Выходит наш герой, спокойный как удав. Ставит свою Адскую колесницу ПМ .. старт. Машинка рвет с места, приподнимая передние колеса, проходит горку, большой поворот .. помошница судьи, расслабленно стоящая для ловли падающих тележек подпрыгивает, подставляет руки пытаясь поймать тележку, но та не снижая скорости уходит через перекресток на вн. круг интенсивно моргая всеми лампочками как новогодняя елка. Разворот, второй разворот, перекресток .. девушка больше не дергается .. второй большой круг, финиш.

Судья объявляет время: 8.72сек. Бурные овации, аплодисменты. Шок. Наш герой забирает тележку и собирается уходить, кричу уже: какая программа? -"медленная" .. среди зрителей стало тихо... :) -"А я аккумуляторы поставил свеже заряженные", поясняет он и довольный произведенным эффектом, уходит ставить тележку на карантин.

.. ну вот как-то в суматохе я даже не успел достать фотоаппарат, чтобы заснять эту квалификацию..

В итоге, первую квалификацию прошло всего 3 робота и было решено что будет 2-я с предварительной тренировкой после обеда.

На обеде: у тебя медленная программа проехала лучше чем мы тренировались - что сделал? -"А я заметил, что на новой резине она лучше держит разворот и немного поднял скорость. А потом, когда поменял мотор, обнаружил что новый мотор тянет значительно лучше внешнего и чтобы выровнять работу моторов увеличил почти вдвое все диф. к-ты в массиве" -"?!? и сколько там сейчас стоит?" -"70/128 .. ну в среднем" -"Ты точно знаешь ЧТО делаешь?" -"Ну ты же видишь - едет. Значит знаю и вообще: не зови меня больше в туалет я - не пойду. Я заню что надо сделать и сделаю, не мешай. Я понял что ты ей сказал, не делай больше так - не пойду".

.. раньше забыл рассказать эту историю про "туалет"... дело было так:

Пока он менял мотор и я нарезал круги, а телефона у него не было и связаться я с ним никак не мог .. меня "осенило": подзываю девушку-волонтерку и прошу: -"там вот мальчик сидит .. я вижу что он очень увлекся, а у него есть проблема .. если он не сходит в туалет, то может случится невероятное, напомните ему пожалуйста" .. пошла, поговорила .. смотрю показывает ему где туалеты .. он встает и идет к выходу. Иду на перехват, чтобы проводить. И, в самый последний момент, этот "паразит" встает сзади охраны и громко так заявляет: -"Я знаю зачем ты сказал про туалет. Я - не пойду, и вообще - не старайся мне больше что-то подсказывать, я знаю что делать и справлюсь сам". Провалиться мне прямо тут.. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Послеобеденная тренировка началась в гораздо менее нервозной обстановке. Дело в том, что все решили что виной плохих проездов было освещение соревновательных полей .. и его "выключили" методом перекусывания проводки. И, кроме этого, ребятишкам разрешили пробоваться на соревновательных полях .. да и требования судей и волонтеров стали заметно мягче... тренерам стало значительно спокойнее, поскольку поля были "в прямой видимости" и дело пошло куда как лучше и веселее.

Ну вот как-то так. Извиняюсь если получилось скучно и длинно.

В кратце остаток: в начале второй тренировки нам с коллегой удалось его убедить что второй мотор надо заменить тоже - "согрит - будет совсем плохо". В результате, он провозился всю вторую тренировку, меняя мотор и не успел на отладку от слова "совсем". Тележка была поставлена на карантин без обкатки вовсе. Как потом выяснил, он успел только залить "исходную программу", поскольку догадался что раз поменял второй мотор, то они теперь будут тянуть одинаково и надо вернуть программу тоже. Он лишь замедлил тележку, но не проверил насколько "на всякий случай"..

Но, это оказалось "не совсем так". Вторая квалификация показала что тележку мотает по трассе куда как сильнее и внезапно выяснилось (в который раз это "внезапно"?!?) что тренировки перед финалом теперь не будет вовсе .. то есть тележка на финал попадает без какой-либо отладки от слова "совсем".

На первом заезде (четвертьфинал) оно и произошло: потеря линии на перекрестке и уезд не в ту сторону с перекрестка. Только третье место, если повезет .. повезло под конец и ему. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

К сожалению, видео первой квалификации мною не снималось .. если кто-то снимал, пришлите или выложите пожалуйста тоже.

Видео 2-й квалификации: http://youtu.be/4EQj_2Yzp-4

Видео четвертьфинала: http://youtu.be/JnO3KNipwQo

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

нашел таки это чудесатое видео с нашего отборочного тура в "младшей группе", веселимся: http://youtu.be/t-c90wyUsTE

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

По опыту соревнования и общения "на полях" выяснил, что форум неплохо читается тренерами команд, а в переписке с несколькими из них пришел к выводу что есть смысл изложить тонкости построения скоростных тележек по трассе, поэтому ставлю вопрос на голосование:

Стоит ли излагать тут подробно и доступно 4-х класснику те грабли и способы их решения, которые есть в этом вопросе?

Неделя на размышления (пока готовлю тексты) - "пошла". :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Пока народ размышляет, нашлось видео нашей первой квалификации. Спасибо тренеру команды HRAsh-19: http://www.youtube.com/watch?v=ZyyT1SazhIE&feature=youtu.be

a5021
Offline
Зарегистрирован: 07.07.2013

Arhat109-2 пишет:
В качестве приза получен .. STM32F405 от Амперки в формате Arduino UNO - плата "Искра". :)

Хи-хи. Надеюсь, вы уже бросили ее в огонь? :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Нет, не бросили. Будем изучать и смотреть на что сгодится. Как раз можно будет и сравнительные тесты провести... ;)

Но, это "не сейчас". В ближайших задачах стоит и так много дел: достроить нашего ходячего робота-паука, начато изгтовление модели ИС-3 от Звезды под управление от Нано (пока только все катки поставлены на торсионные подвески и только), начато изготовление Ардуино Мега2560 с доп. памятью в 512кб, мы получили оф. приглашение на сентябрьский Робофинист и смотрим в какой категории будем выступать (скоростные тележки уже не интересны - "пройденный этап"), ребенок сам(!) взялся читать "Руководство по С/С++" .. так шта .. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Наш главный робототехник:

-"Жизнь удалась! С ТАКИМИ клешнями - порву всех и все кошки будут мои!" :)

danisan
Offline
Зарегистрирован: 31.03.2017

День добрый. Решил оживить для начала лего-машину, чтобы старшего заинтересовать. Идея была крутить колеса от шагового 28byj-48 (4,5,6,7 цифровые пины) и поворачивать серво sg-90 (9 пин). Все это вешаю на Nano с шилдом V3 и управляю по блютуз HC-06 с телефона. При работе шаговик крутится и серва поворачивает. Но только по отдельности, если при крутящемся шаговике включить серву, то шаговый уходит в аут. Горят пара светодиодов на мотор-шилде в разнобой и помогает только перезагрузка. Серва при этом работает без проблем. Хотел узнать, возможна ли вообще такая схема работы? Если да надо код править или смотреть подключение. Извините что пишу сумбурно, младшие под руку лезут, времени просто в обрез.

#include <CustomStepper.h>

int lSpeed = 4;
//int rSpeed = 4;
int maxSpeed = 16;
int ledPin = 10;

const char bNone =  0;
const char bFwd  =  2;

byte tSteps[] = {8, B1000, B1100, B0100, B0110, B0010, B0011, B0001, B1001};

CustomStepper stepL(4,  5,  6,  7, (byte *)&tSteps, 4075.7728395, maxSpeed, STOP);
//CustomStepper stepL(8,  9, 10, 11, (byte *)&tSteps, 4075.7728395, maxSpeed, STOP);

// библиотека для работы с сервоприводами
#include <Servo.h>
 
// создадим объект для управления сервоприводом
Servo myservo;

const int servoMiddle = 90; // servo middle position
const int servoMaxAngle = 45; // servo max angle (degrees)
const int servoLeftBound = servoMiddle - servoMaxAngle;
const int servoRightBound = servoMiddle + servoMaxAngle;

int servoPos = servoMiddle;
int servoTrim = 0;

//void setup() {
//  
//}

#define Serial Serial
enum {
  jF = 'F', // Forward
  jB = 'B', // Back
  jL = 'L', // Left
  jR = 'R', // Right
};

int incSpeed(int I, int i)
{
  I = I + i;
  if (I > maxSpeed) I = maxSpeed;
  else if (I < -maxSpeed) I = -maxSpeed;
  return I;
}

// Process steppers
void stepRun()
{
  if (!stepL.isDone()) stepL.run();
//  if (!stepR.isDone()) stepR.run();
}

// change steppers speeds independently
void stepRotate(char L)
{ // owercode here
  if (L != bNone)
  {
    lSpeed = incSpeed(lSpeed, L);
    if (lSpeed == 0)
      stepL.setDirection(STOP);
    else
    {
      stepL.setRPM((lSpeed > 0) ? lSpeed : - lSpeed);
      stepL.setDirection((lSpeed > 0) ? CW : CCW);
      if (stepL.isDone())
        stepL.rotate();
    }
  }

  stepRun();
}

void ServoRight() {
  servoPos=myservo.read();
     if (servoPos < servoRightBound)
     {
        servoPos = servoPos + 1;
        myservo.write(servoPos); 
        delay(5);
     }
}
void ServoLeft() {
   servoPos=myservo.read();
     if (servoPos > servoLeftBound)
     {
        servoPos = servoPos - 1;
        myservo.write(servoPos); 
        delay(5);
     }
}

void setup() {
  Serial.end();
  Serial.begin(9600);
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
  pinMode(ledPin, OUTPUT);
}

void loop() {
  digitalWrite(ledPin, HIGH);
  switch (Serial.read())
  {
    case jF: stepRotate( bFwd);  break;
    case jB: stepRotate(-bFwd); digitalWrite(ledPin, LOW); break;
    case jL: ServoRight();  break;//myservo.write(0);  
    case jR: ServoLeft();  break;//myservo.write(0);  
  }

  stepRun();
}

 

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Ну .. у меня нет шаговиков, точнее есть 1шт, но нам он так пока и не понадобился. Не пользовались ни разу.

Библиотека Servo.h использует timer1 для имитации серводвигателей на любом пине, а библиотека customSteppers работает за счет частого вызова метода run() в главном цикле. Если при включении серводвигателя шаговик уходит в аут, то можно предположить, что пока перемещается серва - не запускается метод run() и в результате нарушается частота подачи импульсов на шаговик. Кстати, у вас в управлении сервой стоят задержки по 5мсек .. может это слишком большие пробросы для customStepper?

Попробуйте воткнуть метод run() ещё и в функию yeld() для delay() .. может помочь, если это так.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Время опроса истекло. В связи с тем, что публичных пожеланий не поступило, а в личной переписке возник вопрос "а надо ли это публиковать бесплатно" дальней шая работа по созданию руководства приостановлена до лучших времен. У сына началась подготовка к майскому WRO на Лего, я сам переключаюсь на плату Mega2560 + SRAM512k, в связи с чем есть вопрос:

Как в kicad задать РАЗНУЮ ширину для одной и той же дорожки на разных её сегментах? Как ни бьюсь - пока не получилось. Можно задать свои определения для дорожек, можно указать какие дорожки к каким определениям относятся .. но при смене "ширины" дорожки она меняется для всей дорожки разом, что не устраивает ни разу.

Дело в том, что корпус LQFP-100 имеет шаг такой что к ноге можно подвести только ширину 0.2мм. В результате на плате ВСЯ дорожка идет этой шириной .. есть место, почему бы не уширить дорожку там, где возможно? Боюсь что протравить плату целиком из дорожек 0.2мм мне не удастся.. может кто подсказать "как" уширять отдельный сегмент одной и той же цепи?

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Переразвел плату расширения памяти. Получилось вот так:

Схему приводил раньше, где-то тут же. Основные идеи:

1. Добавлен ещё один регистр 74HC573D (U2) для хранения номера текущей страницы SRAM. Запись в него разрешается при  (RD & WR) == 0, поскольку такое сочетание сигналов не разрешено на шины X-bus. Решено схемой V2,V3,R13;

2. В адресном пространстве Меги всего доступно 64 килобайт адресов, из которых 8200 байт занято внутренней SRAM самой Меги. Соответственно, все адресное пространство разделено на 2 "окна" доступа к памяти сигналом A15: =0 обращаемся ко внутренней и/или "особой" (№15) странице внешней SRAM, в зависимости от того попадаем в зону внутренних адресов или адрес меньше 32кб. Иначе, обращение к старшим 32кб адресам ( A15=1, второе окно) позволяет получить доступ к текущей странице памяти, номер которой хранится в этом самом доп. регистре U2.

Решено за счет того что А15 разрешает или запрещает (схемой на базе V1,R9 и R12) выходы U2, младшие 4 из которых формируют старшие разряды адреса микросхемы и они подтянуты к питанию резисторами R14..R17. Можно подтянуть к нулю, тогда номер "спец. страницы" станет = 0. Не знаю что лучше...

3. Сигналы с традиционного регистра-защелки (U1), и регистра страницы (U2) выведены наружу, для полноты картины. Можно наращивать память или подключать дисплеи, которые имеют прямую адресацию своей памяти, если таковые бывают в природе..

4. Старшие разряды регистра страницы подключены через диоды D5..D8 и резистор "на землю" R18 к разрешающему входу SRAM, с целью отключения микросхемы SRAM от шины данных, если номер страницы не попадает в диапазон 0..15. Тоже по большей части для возможности наращивания памяти или подключения каких-либо устройств со своей памятью к этой же шине, если понадобится;

В общем, похоже удалось нарисовать память, которая НЕ использует ни одной "лишней" ноги микроконтроллера, кроме X-bus интерфейса. Что тут несколько смущает, так это работа схемы разрешения на диодах, в случае перевода выходов U2 в третье состояние, когда A15=0 (диапазон внешних адресов 8200..32к): по идее выходы U2 как-бы болтаются в воздухе и резистор подтяжки к нулю должен "разрешать" работу SRAM .. но вот не уверен, надо будет проверять. Или может кто знающий подскажет...

Осталось добавить заливку зон, особенно по второй стороне платы и можно пгобовать. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Развел примерно Мегу2560 для посмотреть габариты и возможное расположение ног и по аналогии сделал разводку платы на ATmega128A под применение с расширенной памятью. Её буду делать первой, все-таки корпус покрупнее и дорожки вышли пошире, паять будет несколько легче.

Получилось примерно так:

Тут из "дополнений" - только кварц, правда полноценный, а не "микроSMD", кнопка "Ресет" и светодиод сигнализирующий о том, что на плату подано питание. Можно (есть место) в будущем добавить сюда небольшой стабилизатор на базе AMS117 или аналога.

Все разъемы согласованы с будущим расположением разъемов на базе ATmega2560. Идея следующая: X-bus - отдельно и согласован с платой SRAM-512kb, напротив него - все интерфейсы: I2C, SPI, UART + вход питания платы и reset. По бокам платы выводятся "управляющие" и "входящие сигналы, сгруппированные по типам: аналоги (вторые 8шт Мега2560 пойдут на второй борт - место под них) + скучкованные таймеры.

Мне кажется такое расположение более осмысленным для различных применений, чем типовое.

Между I2C и SPI оставлено место под 3 контакта для размещения в нем 3-х "свободных" ног Меги 2560: PJ7, PL6, PL7 для возможности использования как сигналы "выбора устройства", если надо. У меги 2560 4-й и 5-й таймер будет расположен вторым рядом с 1-м и 3-м соответственно или встанут дальше в 1 ряд, сдвинув интерфейсы и увеличив размеры платы до 69мм. Пока не решил "что лучше".

Питание платы планирую делать отдельно модулем БП на базе 2-х LM2596: +5в отдельно на каждый борт платы для прямого подключения мощных серв; и LM1117 на питание самой платы и всех интерфейсных разъемов.

Программирование платы силами отдельного (типового) переходника USB-UART на базе CH341G (купил 2шт). На "постоянку" на плате мне кажется он не нужен. Полезнее сделать в виде совмещенного шнура к плате.

Кто что думает? Принимаю критические замечания, пока не запустил плату в изготовление .. :) (спрашивали, а сами попрятались.. эх.)

P.S.

Да, забыл. Размер платы SRAM512kb - 54.61 x 41.4mm. Размер платы ATmega128A - 54.61 x 58.42mm. плата памяти планируется к монтажу ПОД плату меги "бутербродом". Размер плат подтягивался к лего-дыркам в 56 х 40, 48, 64 или 72мм. с учетом боковых стенок около 1мм. По длине получилось иначе, но неплохо ложится на батареечный блок из 4хАА.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Спасибо всем за консультации, подсказки и ответы на заданные вопросы. Внезапно оказалось, что ATmega128A корпусируется в TQFP-64A, а в чудесатом кикаде такого корпуса нет и в помине. То что развел под TQFP-64 оказалось значительно меньше .. сайт kicadlib.org увы не нашел ничего по библиотекам. В немецком не силен.

В общем, всем спасибо за внимание ещё раз..

bwn
Offline
Зарегистрирован: 25.08.2014

Arhat109-2, а почему DipTrace не попробовать, там футпринты под любой корпус рисуются и быстро.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Да, это так .. "крик души", достал этот kicad уже. Просто когда рисовал плату, самой Атмеги128 у меня ещё не было. Сегодня кинулся делать, отпечатал под ЛУТ, примерил и с изумлением обнаружил, что корпус-то "не тот" и в библиотеках этого чуда нифига нет и сайт с библиотеками на немецком и там нет ничего похожего на них от слова "вовсе".. нервов не хватило.

В нем тоже можно свой корпус нарисовать, завтра уже буду перерисовывать. Просто сейчас, когда уже есть и разводка 2560 и 128 мег и платы памяти и блока стабилизаторов, менять программу = делать все заново, как-то не хочется.

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

а гербера нет в kicad?

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Скорее всего есть, не пользовался ни разу. Но, подозреваю как и с pcb файлами вполне возможен "свой формат" .. В целом - очень убогая система. Когда-то давным-давно знакомился с P-cad (разводил свой вариант "Специалиста"), так вот это чудо - есть "жалкое подобие". Но .. уже ввязался. Если будет следующий проект, буду ставить что-то ещё - это уже "факт а не реклама".

В целом, знатокам электроники и МК, хотелось задать несколько вопросов:

1. Модуль SRAM512kb:
a) Будет ли работать такое "диодное И" в случае перевода выходов регистра 74HC573D в Z состояние или
b) подсоединить его просто к одному выводу регистра с подтяжкой к земле?
c) тупо посадить вход CS памяти на землю или
Случай "а" дает возможность дешифрировать в будущем все остальные комбинации и иметь макс. объем памяти;
"b" - дает возможность поиметь наращивание ещё 3-я такими платами в будущем;
"c" - память всегда доступна, нет наращивания зато старшие 4 бита регистра страницы можно использовать как доп.пины платы
какой вариант предпочтительнее?

2. Модуль SRAM512kb: Куда лучше подтягивать младшие 4 бита регистра страниц: к земле - имеем нулевую страницу общей в младших адресах; к питанию - имеем последнюю (15) страницу как общую .. с т.з. возможностей, склоняюсь что подтягивать надо к земле. Тогда имеем особую страницу с номером 0 и возможность расширять память до 256 страниц по 32кб каждая, практически только добавляя микросхемы памяти. Есть задумка, ставить второй микросхемой FLASH на колодке, типа + 15 страниц заменяемого ППЗУ - для запланированного интерпретатора, который будет способен исполнять программы в SRAM - может оказаться полезным..

2. Модули ATmega128A (ATmega2560, .. все что имеет X-bus) : насколько удобно такое расположение управляющих выводов? Насколько безпроблемно  и можно ли будет потом вовсе программировать модуль, через типовой китайский USB-UART переходник на базе CH340G, оно вообще идея - рабочая или куда?

3. Совмещение модулей методом "сендвич" .. кто-то пользует такое? если нет, то почему?

Заранее спасибо за ответы..

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Протравил плату Atmega128A, протравилась практически идеально. Сел паять переходные отверстия - *опа полная. Нифига не вижу .. похоже с мегой 2560 - мне не справиться. :(

bwn
Offline
Зарегистрирован: 25.08.2014

Ну так, чем старше, тем руки короче. Последнее время только с лупой, хоть и без очков пока.
Это так, для примера, у меня обычная миллиметров 120 с подсветкой. Случайно на халяву за 200 рублей купил, а она возьми и понадобилась.))))

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015
bwn
Offline
Зарегистрирован: 25.08.2014

Valera19701 пишет:

уже вторые заказал:)

А мне, которые на глаза, как то не пошли.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Пасибки за участие, но это все под "правую руку", а я - левша, увы. Есть самодельная лупа примерно 20х "в глаз" по типу часовой, но с ней можно только проверять результат пайки. Паять очень неудобно: там от платы до лупы не более 3см. - паяльник с пинцетом влезают с трудом.

4.5 часа "мозгоклюйства" и все переходные отверстия удалось таки запаять. Оторвал только 1 дорожку от посадочного гнезда камня.

P.S. Может кто-то уже смотрел разводку платы (пост №173) .. насколько такое расположение выводов окажется "перспективным" для применений, кто что может сказать?

bwn
Offline
Зарегистрирован: 25.08.2014

Arhat109-2, так они на штативах есть, поищите. Которая у меня, на подставке по типу лампы настольной. Расстояние сантиметров 15-20, хоть справа, хоть слева подлезаю. 1206 еще сам могу, а мельче уже без нее никак.((((

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

Arhat109-2 пишет:

Пасибки за участие, но это все под "правую руку", а я - левша, увы. Есть самодельная лупа примерно 20х "в глаз" по типу часовой, но с ней можно только проверять результат пайки. Паять очень неудобно: там от платы до лупы не более 3см. - паяльник с пинцетом влезают с трудом.

10-15cм до платы, если не пользоваться круглой линзой, которая переставляется с правой на левую сторону, я круглой пользуюсь только для чтения названий на smd 402, 603

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Народ! Особенно обращаюсь к Valera19701: лучше ответьте на поставленные вопросы в нескольких постах выше. Мне важно ваше мнение, особенно тех, кто уже пользовал на практике X-bus для расширения памяти .. насколько принятые решения могут оказаться "полезны" для расширения круга применимости девайса "Мега с памятью"?

По сравнению с приведенной разводкой, сейчас плата выглядит несколько иначе (фоток нет): размер платы в высоту увеличен до 71.1мм, все пины разведены как на расширительном шилде с землей и питанием, кроме X-bus, он остался таким же И добавлен на плату стабилизатор на базе AMS1117 на освободившееся место. Увеличение сделано за счет большего расстояния между линейкой интерфейсов (она такая же только теперь выше и с землей и питанием тоже) и ногами 16-и битных таймеров - там теперь можно будет воткнуть в 1 ряд доп. таймеры 4,5 от Мега2560. То есть ATmega2560 и ATmega128A будут иметь ровно один типоразмер.

Как только доделаю этот пробный вариант (хотел ребенку в днюхе успеть, но уже не судьба), буду пилить мегу 2560 с памятью .. хочется таки решить этот вопрос.

P.S. Кстати, сегодня с утреца подумалось: раз есть расширенный X-bus на плате с раздельной шиной адреса и данных .. почему бы не попытаться прикрутить прямо к нему плату от цифромыльницы с видеоэкраном, так сказать "в готовом виде"? Обвязка экрана там есть, своя память тоже, есть даже Атмега по управлению с кнопок фотика .. почему бы не запилить тупо съем с готовой памяти данных напрямую .. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

А-а-а... кажется получилось запаять плату. Все звонится как надо, потребление в районе 75мА от 2 Li-ion через наплатный стабилизатор на AMS1117-5.0. Не знаю много или мало, но наша погоревшая (многие зап.части сняты с неё) Мега2560 кушала примерно столько же.

Таки оторвал ногу I2C от микросхемы, как раз ту, под которой оторвана дорожка с платы и заменена проводком. Видимо когда ставил Мегу на плату - они как-то странно зацепились и нога ушла под корпус. Вот пока выковыривал и оторвал ногу. Сделал "надрез", добрался до контакта и припаял этот проводок к меге. Теперь она прямо такая же как пример пайки, тут на фото раньше. Сумел таки. :)

В общем, пора прошивать загрузчик..

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Фиг-то там. Дудка ругается, типа нет соединения с платой .. отписался в теме по Crumbuino своими руками и выложил текст ошибки.

diger67
Offline
Зарегистрирован: 25.07.2015

Я записывал boot для 1280 и работало. Объем памяти одинаковый, разница в перефирии и количестве пинов, ядро одинаковое. Даже на девелоперской плате BIG AVR работало.

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

Arhat109-2 это вам решать сколько памяти и сколько страниц вам надо, когда запустите вам будет легче понять

вот вам в помошь, под IDE 1.8.2 прекрасно работает

https://github.com/MCUdude/MegaCore

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Пока отбой. Удалось снять мегу с платы, разводка приведенная выше - никуда не годится (может кому пригодится мой опыт):

1. Переходные отверстия под камнем. Запаять их вручную проводочком "вровень" с платой - фиг вам. Как слесдтвие - проблема с установкой камня, приходится подгибать ноги к плате;

2. Близко разведенные переходные отверстия к ногам МК. Как результат - короткие дорожки и их отрыв при неудачной пайке;

3. Много "свободного места" там, где его не надо и тесновато у навесных деталей. Паять - ещё то удовольствие;

4. Разводка переходных отверстий с целью подхода только с обратной стороны к выходным штырькам разъемов - нафиг не надо, паяются с обоих сторон практически одинаково;

5. Плату надо сначала лудить после травления, а не сверлить. Предварительно засверленная плата после залуживания - ещё тот гемморой по пропайке переходных отверстий. Они заливаются если не припоем, то канифолью - всяко.

6. Переходные отверстия лучше готовить под сверловку. Тут было под сверло 0.4мм, с наружным диаметром по меди 0.8мм - это мало. Сверло нашлось только 0.6 и после сверловки меди на дырках почти неосталось.

7. Запас места вокруг переходных отверстий. Надо больше.

bwn
Offline
Зарегистрирован: 25.08.2014

Arhat109-2 пишет:

5. Плату надо сначала лудить после травления, а не сверлить. Предварительно засверленная плата после залуживания - ещё тот гемморой по пропайке переходных отверстий. Они заливаются если не припоем, то канифолью - всяко.

Ну, лудить с канифолью, это мучение. После травления сперва засверливаю (рисую все отверстия 0,4мм, отличный центр получается), потом сразу мелкой губкой со шкуркой, пока тонер не уйдет (заодно все косяки от тупых сверл сравниваются), немного растворителем и флюс ЛТИ-120. По нему залуживаем, снимаем оплеткой излишки (SMD выводы), моем спиритом, радуемся.))))

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

bwn пишет:

флюс ЛТИ-120

он активный, лучше ФКСП

bwn
Offline
Зарегистрирован: 25.08.2014

Valera19701 пишет:

bwn пишет:

флюс ЛТИ-120

он активный, лучше ФКСП

Раньше просто спиртовым раствором канифоли покрывал, а сейчас разводить лень. Бутылочка от ЛТИ освободится, может забодяжу. Первая помывка сразу после полуды, там ничего не мешает, минута времени. ИМХО.

diger67
Offline
Зарегистрирован: 25.07.2015

Arhat109-2 пишет:

5. Плату надо сначала лудить после травления, а не сверлить. Предварительно засверленная плата после залуживания - ещё тот гемморой по пропайке переходных отверстий. Они заливаются если не припоем, то канифолью - всяко.

Сплав Розе или Жидкое олово не пробовали использовать для нанесения покрытия? Ну и паяльную маску не помешает нанести. Плату с фоторезистом, "лужением" раствором и нанесение маски размером 100х100 получается сделать часа за 3.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Вау, сколько современных технологий .. боюсь спросить: это все в "домашних" условиях с дитями или какое-никакое "производство", пусть и в условном "сарае"?

Пока пользую только ЛУТ по фотобумаге с последующим отмачиванием в кипятке и медленным соскабливанием остатков посудной поролоновой губкой + зубная щетка + зубочистка. получается очень кузяво, особенно если прижглось утюгом как надо. Как выяснилось нажим на утюг только ухудшает процесс - растекаются дорожки .. а вот время прижига - очень даже полезно. Потом заливаем в ванночку кипяточек и окунаем туда изделие и ждем пока остынет и фотобумага отмокнет. Как критерий - она становится почти прозрачной и проступают дорожки. После чего аккуртно снимаю то что снимается руками (как правило почти все) и оставшийся тонкий слой под струю теплой воды и понемногу, без нажима губкой оттираю то что осталось. Далее - зубная щетка + зубочистка прочищаю места между тесными дорожками. 30-60минут и плату можно травить.

Мелованная фотобумага для струйников хороша тем, что при отмачивании на дорожках легко остается не только краска тонера, но и сам мелованный слой, что упрочняет тонкие дорожки.

Пользую только спиртовой раствор канифоли. Привык и очень удобно: кисточка в руки или пульвелизатор (есть такие баночки для "лака для ногтей" .. тажке и при пайке деталек: намазал кисточкой и паяй себе.. твердую канифоль уже практически и не пользую. Остальное все надо закупать, где-то хранить .. не, не дома - точно.

bwn
Offline
Зарегистрирован: 25.08.2014

Все дома, ток без утюга. У меня Бразер, тонер под утюг плохо подходит. Использую факсовую бумагу и ацетоно-спиртовую технологию, в классике писали 4 спирта 1 ацетона, под мой тонер оказалось 4 646растворителя и 1 спирта. Подготавливаем плату как обычно, из шприца на фольгу тонким слоем, прилепляем рисунок (сразу становится прозрачным, можно подправить без фанатизма) и это дело в бутерброд из двух брусков и резины под струбцины, сорок минут, разбираем и оставляем чтобы закрепилось (можно и сразу снимать, но бывает отдирает что то мелкое). Потом под струю воды и отделяем бумагу (чистить остатки практически не приходится, максимум пальцем немного скатать). Травлю в смеси перекиси водорода 100мл, 30гр лимонной кислоты, 5гр поваренной соли (все ингредиенты безопасны и не маркие, закупаются в магазине и аптеке по мере надобности). Раствор не хранится.
Как сверлю-залуживаю, выше уже описал.

Из плюсов - невозможно испортить основу, хоть сто раз смывай накатывай (сейчас с первого раза все выходит, мелкие косяки из за неравномерного прижима, пока думаю над конструкцией пресса). На днях делал 8 штук плат на MAX7219, только на одной дорожку в одном месте подорвало. Дороги стараюсь меньше 0,4 не гонять, но и 0,2 нормально выходят. Под пофигисторами - 1-2 под 0805 или 2-3 под 1206.
Двухсторонки кстати не пробовал, пока в одном слое получается (пару перемычек за грех не считаю). )))))
Фоторезист, красиво, повторяемо, но кажется затраты не сопоставимы с результатом. ИМХО.

diger67
Offline
Зарегистрирован: 25.07.2015

Arhat109-2 пишет:

Вау, сколько современных технологий .. боюсь спросить: это все в "домашних" условиях с дитями или какое-никакое "производство", пусть и в условном "сарае"?

Нет, все в домашних условиях. Думаю если постоять 3 часа на любой оживленной трассе, вреда будет гараздо больше.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Спрошу ещё раз тут, может кто-то подскажет:

В модуле SRAM512k использованы мосфеты 2N7002, у которых по одному даташиту указано время открытия/закрытия как 10/15нс, а в другом как 25/35нс. Вопрос: можно ли их использовать на шине А15 как инвертор адреса и на сигналах RD,WR как транзисторное "2И-НЕ", хватит ли их быстродействия?

По инвертору вижу так, согласно даташиту: по спаду Clk выставляется ALE и через 31.25нс (16Мгц), по фронту, на шине появляется весь 16-и разрядный адрес, младшая часть которого через 31.25нс (опять по спаду) должна быть защелкнута в доп. регистре спадающим сигналом ALE. И только по следующему фронту, через 31.25нс происходит выставление данных на шину в цикле записи с одновременным сигналом WR или установка сигнала RD для чтения данных на шину из SRAM. Следующий спад (Т3) является как-бы стробом читаемых данных или м.быть стробом для записи данных в SRAM, но на самом деле данные должны удерживаться и защелкиваться в SRAM следующим фронтом Т4 изменением сигналов RD,WR ..

Итого, от момента выставления А15 на шину до начала работы сигналов RD,WR проходит .. 62.5нсек. То есть, если за это время транзисторный ключ успевает инвертировать сигнал А15 - то работать будет.

По транзисторной схеме "2И-НЕ" сигналов RD,WR: нормально, при работающей шине X-bus, один из сигналов или оба сразу всегда находятся в лог.1, и соответственно, один или оба транзистора открыты и на выходе схемы должен быть лог."0". Установка обоих сигналов в "0" возможна только вручную, при отключенном X-bus, с целью ручной записи номера страницы в доп.регистр .. так что, вроде как скорость срабатывания ключей - роялей не играет ..

Может кто-то посмотреть внимательно и сказать верно изложенное выше или нет?

Или может кто-то посоветовать какие мосфеты можно использовать с гарантированным временем срабатывания меньше 40-50нсек, а лучше 10-15нсек?

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015