Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Прошивка AVR на производстве
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
777777
Уже спрашивал, но тот топик куда-то делся. Нужно оборудовать на производстве место для программирования серийных изделий. AVR Studio - слишком сложно для девочек, которые будут этим заниматься. Нет ли каких-то более простых средств, в идеале - чтобы можно было запрограммировать нажав на кнопку? В крайнем случае, с использованием диалога открытия файла, не сложнее. Программатор AVRISP mkII
ae_
Цитата(777777 @ Dec 9 2010, 21:40) *
... Программатор AVRISP mkII

Программировать можно из консоли с помощью Stk500.exe (входит в состав AvrStudio).
Создаёте *.bat или *.cmd файл с необходимыми параметрами, ярлык от него - на рабочий стол.
Программирование одним кликом.
demiurg_spb
avrdude + bat-файл
проще не бывает
sensor_ua
AVReAl
demiurg_spb
Цитата(sensor_ua @ Dec 9 2010, 17:00) *
AVReAl
не работает он с AVRISP mkII программатором...
только лишь stk200-byteblaster и на чипе ft2232
sensor_ua
Цитата
не работает он с AVRISP mkII
да. но на производстве, IMHO, лучше пользоваться им.
MDD
Цитата(ae_ @ Dec 9 2010, 15:52) *
Программировать можно из консоли с помощью Stk500.exe (входит в состав AvrStudio).
Создаёте *.bat или *.cmd файл с необходимыми параметрами, ярлык от него - на рабочий стол.
Программирование одним кликом.

Поддержу, именно так и шьем.
ArtemKAD
Любой автономный программатор. Можете даже сами такой сделать....
Палыч
Для серийных изделий, может быть, стоит озаботиться и разработать собственный программатор "заточенный" под программирование Вашего устройства.
Когда нечто подобное возникло на предприятии, разработали небольшой прибор - программатор-калибровщик (нам кроме заливки программы требовалось ещё и калибровать устройства - калибровочные значения "заливались" в EEPROM через тот же SPI). В нём стоял МК с памятью поболе целевого (чтобы поместилась прошивка целевого прибора, ПО программатора и калибровщика), на панели пара разъемов, несколько кнопок и светодиодов. Девочка на производственном участке соединяла целевой целевой прибор и прибор-программатор кабелями и тупо нажимала кнопку - заливалась прошивка по SPI, устанавливались fuses (если очень нужно, то и защита памяти biggrin.gif ), всё это проверялось чтением/сравнением и зажигался светодиод "Всё ОК" или "Всё плохо" (если программирование прошло - для калибровки нажималась следующая кнопка - и опять светодиод "ОК/Еrror"...). В зависимости от результата, девочка откладывала прибор или к готовым изделиям, или в брак.
К недостаткам такого подхода, несомненно, относится то, что такой программатор нужно проектировать, изготовить. Но затраты, я считаю, себя окупили (да и времени на такой программатор у специалиста много не уйдет). Зато всё остальное - сплошные достоинства: и компьютер на производственном участке не потребовался (девочка может и не уметь им пользоваться), и производственный процесс ускорился (автоматизация всё таки), и место на столе такой программатор занимает существенно меньше, и посадить на такую работу можно хоть девочку-школьницу, хоть мартышку (всего-то делов: подключил пару кабелей и нажал пару кнопок).
zhevak
Цитата(777777 @ Dec 9 2010, 18:40) *
Нужно оборудовать на производстве место для программирования серийных изделий. AVR Studio - слишком сложно для девочек, которые будут этим заниматься. Нет ли каких-то более простых средств, в идеале - чтобы можно было запрограммировать нажав на кнопку?

Попробуйте погуглить по слову replicator. До недавнего времени имел ту же проблему, но применительно к MSP430. Срочно прикупил пару репликаторов, а потом сделал свой. Доволен как слон. Довольны тетки, которым не надо ничего изучать -- жми да жми на педаль! Что было до того, рассказывать не имеет смысла. Сей час все просто: тетки
а) вставляют изделие в разъем
б) жмут единственную кнопку
в) согласно светодиоду (красный -- брак, зеленый ОК) складывают запрограммированые и и залоченные изделия в разные тары. (По секрету -- уже распечатана 4-я тысяча, ни одного брака! Что не может не радовать.)

В крайнем случает сделайте свой репликатор. На удивление окупается быстро! А уж какой головняк снимается по сопровождению процесса производства -- это просто не передать словами!

Будете делать самостоятельно, отлаживайте протокол не в микроконтроллере (репликатора), а на компе. Комп подключается к изделию через параллельный порт (через буферы и, при необходимости, через оптореле). Потом, когда отладите, все Си-шные тексты в легкую адаптируются к МК. На всё-провсё уходит неделя-две!
Я сам обалдел! Поэтому спешу поделиться разведанной тропой.

Удачи!
demiurg_spb
Цитата(sensor_ua @ Dec 9 2010, 17:22) *
да. но на производстве, IMHO, лучше пользоваться им.
Чем он лучше avrdude и stk500.exe?
Я нахожу лишь одно достоинство: автор AVREAl'a Александр - наш exUSSR соотечественник и уважаемый мной человек.
(добавлено позже: простите Александр - бес попутал вас назвать Евгением)

Не всё можно сделать также просто как на ПК на репликаторе.
Подставить текущую дату и время, считать и склеить бинарники по различным условиям, да мало-ли что потребуется ещё.
На ПК - 5 минут, в репликаторе несомненно сложнее.
Не гибкий это способ, одним словом, хоть и кондовый.
Таково мое ИМХО.
Палыч, продай человеку разработку, или озвучь сумму - пусть оценит трудодни:-)
TriD
Палыч +1
Кроме всего прочего, из такого вот автономного программатора несколько сложнее утянуть прошивку, чем с компа.
Для хранения прошивки целевого устройства удобнее всего пользоваться в таком программаторе внешней EEPROM, в этом случае микроконтроллер программатора может быть любым.
Палыч
Цитата(demiurg_spb @ Dec 9 2010, 19:03) *
Палыч, продай человеку разработку, или озвучь сумму - пусть оценит трудодни:-)
В моём случае всё оказалось довольно легко: прибор имел измерительную часть для для контроля/индикации генерируемого сигнала, а также в ПО для калибровки ещё на стадии проектирования был реализован обмен по SPI - из самого прибора и был сделан программатор-калибровщик: измерительную часть изготовили "тщательнее" и откалибровали точнее, а уж кнопочки/светодиодики - пара пустяков запрограммировать и переднюю панель прибора "поправить", да и программаторы на заре появления AVR - делал. МК с совпадением "нога в ногу", но с большей памятью выбрать сейчас - тоже не проблема. По-моему, на все переделки ушло три-четыре дня, ну, может - пять... А, если только "заливка" прошивки нужна, то схема такого программатора будет "до безобразия" проста, и ПО не сложное (если с обменом по SPI программист дело имел - просто заимствуется кусок из такого проекта + передача команд на чтение/запись signature/flash/fuses/lock/EEPROM - в документации на МК это расписано)...


Цитата(TriD @ Dec 9 2010, 20:04) *
удобнее всего пользоваться в таком программаторе внешней EEPROM
Можно и внешнуюю, а можно взять МК с "достаточным" количеством памяти, например mega256.
muravei
Кажется, Olimex делает программатор кот. может работать и с компом и автономно.
sensor_ua
Цитата
автор AVREAl'a Евгений
ошибаетесь - автор - Александр Редчук aka ReAl - http://real.kiev.ua/
Цитата
Чем он лучше avrdude и stk500.exe?

насчёт avrdude имею печальный опыт - оно через STK500v2 на м128 упорно лажался, причём не каждый раз. при прошивках примерно одного размера, но разного содержимого. пытался разобраться с сорцами, но плюнул. Родной stk500.exe таким не страдал. От AVReAl гарантированно можно получить адекватный код возврата, а от stk500 уверенности такой нет.
Цитата
В крайнем случает сделайте свой репликатор. На удивление окупается быстро! А уж какой головняк снимается по сопровождению процесса производства -- это просто не передать словами!

Всякие склеивалки/репликаторы как раз с применением AVReAl и делаем. Вот только шьют у нас наладчики, а не девочки, не изучавшие элементарный курс компутерной грамотности типа школьного курса информатики. и компов у них хватает, хоть и далеко не самых новых/модных. Только если мы используем не только AVR, но и большой зверинец, да и большинство изделий имеют какие-никакие интерфейсы, то делать самолепные репликаторы только себе дороже. Посему считаю, что в большинстве случаев аппаратный репликатор - бессмысленно-беспощадный способ убить время и потратить деньги
Nixon
Поддержу - лучший вариант для потока avreal. Особенно если он с кнопкой запуска программирования (читайте более подробно на странице автора).
В этом случае программирование на потоке выглядит так:
- запустил батник;
....
- подключил разъем
- нажал на кнопку на avreal
- посмотрел на цвет светодиода (успешное или неуспешное окончание программирования)
- отключил разъем
....
На монитор при этом смотреть совершенно не нужно (только в случае неуспешного программирования, да и то это можно отложить на потом).
Плюс к тому же приятные опции по сериализации устройств.
demiurg_spb
Цитата(sensor_ua @ Dec 10 2010, 01:07) *
ошибаетесь - автор - Александр Редчук aka ReAl - http://real.kiev.ua/
Ой! Дико извиняюсь, конечно Александр.
И тем не менее, avrdude можно пофиксить и пересобрать в два счёта самому т.к. проект опенсорсный, в отличие от AVREAl'a.
Александр уже высказывался на сей счёт (переход к открытости) - его право оставить всё как есть.
К сожалению в avrdude поддержка ftdi'шного программатора вяло развивается.
Да есть несколько сыроватых патчей, но не более того.
Я за опенсорс - там перспектива.
alexeyv
У нас на производстве AVR программируют c помощью автономного программатора (AS-4M).
Загружаешь туда прошивку и жмешь последовательно три кнопки - Стирание, Программирование, Проверка. Любой рабочий усваивает за 3 минуты
ArtemKAD
Цитата
В этом случае программирование на потоке выглядит так:
- запустил батник;
....
- подключил разъем
- нажал на кнопку на avreal
- посмотрел на цвет светодиода (успешное или неуспешное окончание программирования)
- отключил разъем
....

Забыл написать, что перед этим надо включить комп, и найти нужный батник. А еще иногда поматериться если под виндой...
Предлагаю другой вариант -
- подал питание (можно даже на устройство)
- вставил контакты в дырки программирования
- нажал и отпустил кнопку
- услышал свист - "Ок"
- вынул контакты из дырок.
- следующий...
Выбор записываемой программы выбирается установкой в панельку нужного проца.
Выбор тест/программа - выбирается перемычкой.
Стирание, программирование, проверка, фьюзы, локи.... Все в одном флаконе
Ну и приятное дополнение. Проц перед записью кода программы контролирует, а записана ли туда сейчас тестовая программа. Если нет - ничего не пишет. Что позволяет не пропустить в производстве столь важный этап как тестирование....
ЗЫ. Да, время записи даже без форсирования процесса (на 1МГц) ну очень смешное...
zhevak
Цитата(sensor_ua @ Dec 10 2010, 03:07) *
Всякие склеивалки/репликаторы как раз с применением AVReAl и делаем. Вот только шьют у нас наладчики, а не девочки, не изучавшие элементарный курс компутерной грамотности типа школьного курса информатики. и компов у них хватает, хоть и далеко не самых новых/модных. Только если мы используем не только AVR, но и большой зверинец, да и большинство изделий имеют какие-никакие интерфейсы, то делать самолепные репликаторы только себе дороже. Посему считаю, что в большинстве случаев аппаратный репликатор - бессмысленно-беспощадный способ убить время и потратить деньги

Не-не, уважаемый! Вы меня не правильно поняли. Я говорил не о компьютере + программатор + высококвалифицированный рабочий, а о репликаторе + рабойчий с низкой квалификацией. В моем случае пожилые тетеньки, которым за 50. И хотя у них мозг давно одеревенел, но они -- ответственные, исполнительные, не требовательные к з/п. Старые кадры! Таких еще поискать надо! И даже если придет вчерашние школьники, то проблем не будет.

Репликатор -- это такая мыльница (коробочка) с одной кнопочкой типа "СДЕЛАТЬ ВСЕ СРАЗУ" и парой светодиодов. Поэтому никаких знаний компа не требуется. Соответственно, и требования к работнику такие же.

Я еще раз повторю, когда я первую партию из сотни изделий сам запрограммировал, при этом IAR несколько раз зависал и падал, я понял -- тут программеру-то будет сложно, бороться с синхронизацией JTAG-а и перезагрузками Венды, IAR-а и просто перетыканием USB-программатора, не говоря уже о человеке, который о программировании и микроконтроллерах только по телевизору слышал. Мы изделия выпускаем тысячами. Поэтому ни о какой глюкавой Венде речи и быть не может! А чтобы из-под нее еще шить МК и пережигать перемычку (в MSP430 перемычка выжигается. Восстановить ее нельзя!), -- ну это вообще отрыв от понимания отрыв от реальности -- типа а каким местом тут комп нужен?

Поэтому было принято решение -- максимально упростить процесс. Процесс репликации ПО. В начале был куплен промышленный репликатор. Поигрались, поняли, что удобно. Сотворили свой. Причем сделали не один, а целую серию.

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

Извините, не хотел расстолковывать, но пришлось. Лучше пусть будет много слов, чем будет непонимание и всеобщий галдеж, обсасывающий недомолвки каждого поста.
DrGluck
Однозначно - свой автономный (перезаливаемый при необходимости) программатор.
Неозвученные выше "плюсы" этого :

1. Возможность "привязки" к определенному месту сего занимательного процесса, т.е. даже если его украдут - воспользоваться не смогут (возможны различные варианты активации-блокировки)

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

3. Калибровка внутреннего ИОН. Ну точнее не калибровка sm.gif а его замер с последующей записью коэфф. коррекции в EEPROM или какую то ячейку в памяти программ.

4. Контроль целостности самого микроконтроллера (в случае программирования перед его распайкой, ZIF панелька)
Палыч
Цитата(zhevak @ Dec 10 2010, 20:40) *
... пусть будет много слов, чем будет непонимание и всеобщий галдеж, обсасывающий недомолвки каждого поста.
Imho, каждое предприятие и, даже производство конкретного прибора на конкретном предприятии имеет свои особенности, диктующие особенности организации производственного процесса: что хорошо на одном предприятии может быть неприменимо на другом. Поэтому, нет смысла что-то сравнивать - достаточно рассказать как это сделано у Вас, а уж автор вопроса выбирет то, что подходит ему.
Diusha
Цитата(777777 @ Dec 9 2010, 16:40) *
Нет ли каких-то более простых средств, в идеале - чтобы можно было запрограммировать нажав на кнопку?

Сам ничего более сложного, чем нажатие кнопки, в качестве программатора не признаю. Пользуюсь своим, написанным когда-то на коленке. Если интересно могу скинуть прогу и схемку (через LPT). Правда, фьюзы сделать тоже одной кнопкой до сих пор руки не дошли (выстевляю через менюшку) (нечасто их шью, в отл. от кода)
sensor_ua
Цитата
Вы меня не правильно поняли. Я говорил не о компьютере + программатор + высококвалифицированный рабочий, а о репликаторе + рабойчий с низкой квалификацией
Я-то Вас как раз именно так и понял. И сообщил, что имеется другой опыт. Я считаю, что репликаторы как функция промышленного программатора и как его кусок в виде отдельной узкозаточенной коробочки нужны были когда компутеры были примерно одинаково дороги, а с одной м/с (в DIP-корпусе или через зажимные колодки) тиражировалось множество копий программаторами (обычно в режиме параллельного программирования). Времена изменились. И в арсенале разработчика может вполне уживаться несколько семейств МК различных производителей. Так что моё мнение остаётся - изготовление самолепных автономных узкозаточенных программаторов это нерациональное расходование средств и времени.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.