Что-то глючит, не могу понять что конкретно

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

При загрузке программ из плагина Ardublock в Ардуиное ИДЕ 1.6.4 под Линукс Дебиан 8.5 периодически стала проявляться проблема: ИДЕ периодически теряет USB порт, при этом в списке портов USB перестает определяться полностью. dmesg тем не менее показывает, что наша Нано к порту подключена успешно. Если перетыкивать разъем USB у нано или перезагружать её ресетом, то со временем "порт находится" и прошивка производится вроде бы корректно, но бывает "долго".

При потере порта пишет или что дудка не нашел порт, или что порт запрещен к использованию через ИДЕ.

Что это? Проблема в Линукс или проблема в ИДЕ или какой-то косяк в Нано? Мучаемся второй день.

Да и ещё (может поможет): при питании Нано от аккумуляторов на ней висит стабильно +5в, а при питании с USB-порта только 3.75в, несмотря на то что сам порт отдает +5в честно (измерял)... Нано стоит на расширительной плате и питается через её линейный стабилизатор когда от аккумов. .. коротыш по питанию через USB, в смысле на самой нанке или плате-расширителе?!?

Кто-то сталкивался с чем-то похожим?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

По Вашей конкретной проблеме ничего сказать не могу, но...

Я учил своего ребенка программировать примерно в том же возрасте, что и Вы своего. Сначала хотел на ЛОГО, но не сумел найти компилятор. Пришлось на Паскале (кстати, Паскаля сам до этого не знал). И думаю, это очень здорово, что начал учить именно на нормальном языке с нормальным текстовым вводом.

Arhat109-2, Вы уже неоднократно сталкивались с проблемами, связанными исключительно с выбором Ардублока в качестве входного языка. Поверьте, ребенок в этом возрасте уже вполне способен постичь текстовый редпктор, и пользы от этого будет заметно больше.

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

Это есть. Вообще-то мы начинали с обычного "С" по весне 2015-го, но столкнулись с проблемой английского языка и оказалось "очень сложно".

Позже, уже этим летом, открыли для себя Ардублок. Кстати, несмотря на все его недостатки: глючит периодически, разрушая всю построюшку что самое неприятное; имеет существенные ограничения на макс. размер около 300 строк на "С" (нашли способ как обходить это); не имеет вызовов функций с параметрами (всё - только через глобалы); не позволяет модульное программирование; нет коротких целых, беззнаковых, нет структур, а про классы - вообще "нет такого" и мн. др. ..

Тем не менее, развитие программирования пошло существенно быстрее. Освоено формирование блока операторов в процедуры, создание среди глобалов системы имитации параметров вызова, освоены массивы и работа с ними и мн.др., чего было "сложно" ранее.

Сейчас, ребенок вполне в состоянии накидать код на ардублоке, перелить его в ИДЕ и поправить уже на "С". И английский уже смущает значительно меньше, ибо найдена понятная ему аналогия между картинкой скажем условного оператора в Ардублоке и правилом записи if(..){..}else{..} на языке. В общем, уже создана "база" для перехода на нормальное программирование, что мы постепенно и делаем. Ну и почти полгода тренировок (имя переменной - только на английском) позволило существенно расширить словарный запас английских слов ибо дается существительное - как название переменной плюсом глагол и строим всяческие предложения с этими словами для усвоения и учимся читать правильно все это .. (уже имеем твердую 5 по английскому)

Кстати, понимание картинок Ардублока произошло благодаря .. его освоению языка ДРАКОН и прочтению книжек Паронджанова, за что последнему - отдельное спасибо. У меня в развитии идет проект "ДРАКОН вместо Ардублока" .. но пока застопорился на способе оформления использования данных (визуальный DDL) в иконах ДРАКОН.. ну и с JAVA я ещё только осваиваюсь.. :)

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

В общем неприятности растут: вчера "ни с того ни с сего" стал сбоить пин №12 на Нано.. На нем теперь висит 1.68в и он не только не принимает показания датчика линии, но ещё и просаживает как-то датчик, что тот перестает настраиваться. Поначалу решили что "датчик сгорел" .. а нет! Датчик оказался вполне рабочим.

Проблема в том, что у нас почти не осталось "свободных" пинов у Нано: 6 датчиков линии + узв. датчик (2шт) + 6 линий управления моторами (L298N) + серводвигатель для узв. датчика + COM-порт для связи с компом .. итого 17 линий и не хотелось занимать I2C для возможности втыкнуть LCD1602 для отображений .. плюсом ещё нужна хотя-бы пара кнопок для управления ..

Сильно смущает что питание платы от USB-разъема значительно меньше 5 вольт .. не в этом ли дело? (сбоит стабилизатор на расширительном шилде или у Нано)

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Arhat109-2, у нано упрощённая развязка питания, от +5в  USB на Vcc питание поступает просто через диод. Cоответссно получается примерно на 0,4в меньше при исправном диоде. (шоттки). Диод этот имеет свойство сгорать и подгорать. В этом случае напряджение бывает и ниже. Можно вообще вместо него перемычку запаять, а если что  доверяться защите USB  от КЗ на компьютере-доноре.

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

Пасибки. Поделитесь ссылками на китайские Нано на CH340 и плату расширителя для неё в формфактор УНО, кто может .. дабы не шариться долго по просторам Сети (а то уже не остается времени), спасибки заранее.

попробую посмотреть что там "подгореть" могло ещё...

Logik
Offline
Зарегистрирован: 05.08.2014

Нано на днях пришла отсюда https://ru.aliexpress.com/item/Freeshipping-Nano-3-0-controller-compatible-for-arduino-nano-CH340-USB-driver-NO-CABLE/32341832857.html?spm=2114.13010608.0.0.M3fBYV&detailNewVersion=&categoryId=400103

за 16 дней. Еще есть дешевле центов на 10 но они или с USB микро или 168 или просто непонятные.

"формфактор УНО"? - не. не знаю.

Просадка напряжения скорей всего от большего тока т.к. куча обвязки, если еще Шотка дерьмовая, или вообще не шотка так запросто. Или кабелю usb "высокоомный". Горят шотки - да, бывает, перепаивал пару раз, но подгорают - не, так не бывает, там процес лавинообразно идет до конца. В общем померить ток и падения напряжени на елементах и все станет ясно.

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

Пасибки, поизмеряю. Я имел ввиду плату-расширитель пинов для Нано, который имеет размер УНО шилда... вот его поизмерять не удастся - Нано стоит как раз НАД деталюшками стабилизатора и туда не подлезть никак. Саму нану - конечно же перепроверю сегодня.

Заказать я уже ничего не успеваю до 10 декабря (у нас всего 1 день соревнований)..

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

Вопрос отпал. Только что позвонил дитенок: "Она не слушается датчиков, ни один датчик не настраивается и программу залить не дает, выскакивает какая-то ошибка аврдуде чего-то там". Совсем дохла явно. "Ну и гадость, эта ваша заливная рыба" (с) ..

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Arhat109-2, замкните диод перемычкой, дел на 3 минуты.Он там не особо и нужен, защищает порт от обратного напряжения.

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

Да все уже .. та нанка не определяется и признаков жизни не подает никаких, хотя на плате питание есть и оно 5в. Заменил, из пожертвованных коллегами по работе. Так и остался вопрос как она могла погореть, получая на входы сигналы от ИК-датчиков линии .. там жеж выход с ОУ и те же самые 5в с платы.

.. или то что 6 датчиков на длинных проводах порядка 35-40см как-то сказалось? Не верю..

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Arhat109-2 пишет:

Проблема в том, что у нас почти не осталось "свободных" пинов у Нано:

Я в свое время разделил работу на 2 контроллера:

- один заведовал тележкой: моторы, энкодеры, датчики линии,

- другой управлял им, а ткже опрашивал датчик расстояния, гироскоп, магнетоматр, выводит данные на дисплей,

общались между собой по I2C.

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

Это уже на потом. В силу того, что наша Мега2560, вместе с УНО и Нано приказали долго жить, а к нам таки приехала память и весь обвес, то уже заказал 2 кирпича Atmega2560-16au по 210руб и коллега тоже заказал себе Atmega128A в количестве 5шт .. будем пробовать разводить и строить свои платки с памятью по 512кб на обоих камнях как только все доедет. На этом видимо наше развитие и обучение на базе Ардуин и закончится.