Бывает. Я вот ушел с работы программистом, первое время делал сайты на заказ, а сейчас вот в гараже лежат и производятся табло ценников для АЗС (из серии «дороже, но надежнее»), жужжит прототип кондиционера для вертолета (настоящего) и в альтиуме делается плата контроллера террариумов. И один микросайтик. :)
Причем оно «само приползло», но, конечно, радует. За ценники АЗС вообще выплатили сумму авансом под предлогом «я тебя знаю, ты херово не сделаешь». Вот, сижу, делаю, блин :)
Самое радостное из моей радиотехнической карьеры было устройство, которое заказал в 90-х один новый русский для своего дома исервиса, за женой и работниками следить. Радость устройства делится на две части — первая — это, конечно, что встретив заказчика через лет 10, спросил ради прикола про устройство, а он ответил, что до сих пор работает и радует. Для штуковины, собранной на коленке, удивило. Вторая радость находится вот тут: king2.net/files/docs/device.doc. Обратите внимание на аббревиатуру устройства (это я после озвучивания причин так его назвал).
Что же касается собственно топика, хочу заметить только, что разработка устройств «на один раз» и «мелкосерийных» сильно отличается. Я, например, должен сейчас учитывать такие вещи, как удобство монтажа, удобство ремонта и удаленной диагностики, долговечность и «классность» применяемой комплектухи (типа а кто производитель керамических кондеров? а какие отзывы? а может сделать запас по напряжению не в полтора, а в три раза?), особенности обслуживания (например, защита RS485 сделана так, что при более-менее страшном вмешательстве типа 220 вольт в линию, один элемент гарантированно перегорает, второй гарантированно замыкается, и оба выводные, то есть чтобы оно снова заработало, но уже без защиты — нужны только кусачки), стоимость автоматического монтажа на станке и прочее, прочее, прочее… это реально жесть, каждый раз возникает какая-нибудь новая фигня типа «лучше ставить хреновины в другом корпусе и подороже, потому что это экономит на автометическом монтаже позже».
Особенно забавны ситуации, когда купить 300 кондеров или 500 встает ровно в те же самые деньги.
А вообще-то, конечно, да, работа как-то сама тебянаходит, приходится выбирать. Правда, я в Москве и тут цены несколько другие, но и требования тоже.
1. Не надо пользоваться говнофлюсами типа канифоли, паяльной кислоты, аспирина и прочего из прошлого века. В магазинах продаются отличные припои с флюсоми жидкие флюсы. Мой выбор — припои с воддсмывным флюсом и водосмывный флюс сам по себе. Купить можно в магазинах «Профи» (siriust.ru), если немного надо. В Чип-И-Дипе тоже можно, но там раза в 2.5 дороже, хотя если потребовалось в воскресенье вечером и срочняк — то можно и там.
2. Правильно выбирайте температуру паяльника. Если слишком маленькая — флюс сгорит до того как припой расплавится, слишком большая — не успеет сделать свою работу. В зависимости от массы жала рекомендую что-то в диапазоне 270-330, определяется экспериментально. То, что пишет пальная станция — не обязательно совпадает с реальной температурой.
3. Правильно лудите жало. Если жало имеет вид серебристый — это необгораемой жало, к нему надо купить этакую мочалочку, в сухом виде жесткая, в мокром становится мягкой. Об нее жало надо вытирать. Никаких надфилей и зачистки жала механическим способом!
4. На жале таким образом будет немного припоя. С одного конца жалом тыкаете в припаиваемые детали, другой рукой НЕМНОГО припоя с флюсом. Ждете, пока припой растечется по детали и они прогреются (сухим жалом греть обе спаиваемые поверхности — только время зря терять), далее скармливаете еще немного припоя, и образуется очень красивое место пайки. Проверяете — гальтель (кусочек припоя) должна быть блестящей и гладкой.
5. Если флюса из припоя маловато — кисточкой смазываете место пайки. Учтите, что в флюсе есть активные вещества, они расходуются при пайке и, даже если место пайки выглядит сырым, но вы там паяли уже пару раз — надо флюса добавить.
6. SMD паяются пастой и феном. Паяльник — от лукавого, станции начального уровня с фенами стоят недорого, попробуйте. Пасту тоже берите с водосмывным флюсом.
7. Водосмывный флюс — рулез форева. После траха вприсядку с отмывкой бензиново-изопропанольной смесью, в разных банках с разной степенью чистоты и так далее я перешел на водосмывный флюс и ура. Просто помыл под теплой водой, ополоснул в дистилляте — плата красивая и чистая, нигде ничем не воняет.
Меня больше интересует, как ребята, которым надо покупать средства отладки (т.е. своих нет) и узнавать на тему STK (то есть до этого не знали), другими словами, с процессорами незнакомые, а также неспособные сделать простенькую платку «на коленке», предложили ATMEL как одно из решений заказчику.
У меня был как-то случай, когда человек попросил юзать STM8, я тогда только начинал с ним работать, получил вполне оправданный отказ, то есть либо к другому разработчику, либо на atmega8. Да, дороже, но на этом я точно знаю, что сделаю.
Сервисы, производящие апгрейд софта стиралок, тоже есть.
Другое дело, что если они отвечают за работу машины — они туда никого не пускают, и это нормально.
Да, это не отвечает требованиям гиков. Зато это отвечает требованиям домохозяек, которым нужна Одна Большая Кнопка «сделать хорошо».
По той же причине, по которой Вы сами не можете обновить софт в контроллере двигателя своего автомобиля. Потому что оно не нужно 99.999% пользователей.
Вы пробовали роутером торренты качать, в качестве сетевого диска его использовать, фильмы оттуда смотреть, в качестве принт-сервера? Я пробовал, скажу честно — говно во всех категориях, кроме собственно роутинга.
Если оно залипать будет на простейших функциях, то-таки да, оно сможет мне через SNMP раз в десять секунд честно сообщать, что не успевает контролировать энкодер :)
Мы про электронику управляющую вообще-то говорили, причем тут пластик для проводов.
В качестве примеров Вы почему-то всегда приводите те устройства, подавляющее большинство функций которых УЖЕ реализованы в линуксе, то есть сетевые устройства, работающие с потоками данных — роутеры, VOIP, и так далее. Стиралка к таковым не относится.
Вот чайнику, с таким подходом, нужно ли это?
Заметьте, линукс в телевизорах появился ровно тогда, когда стало популярным смотреть видео через интернет и с сетевых дисков (на которые качают торренты). До этого момента оно там нафиг нужно не было и его там-таки не было.
Когда стало нужно — оказалось, что свое все то же самое делать геморройнее в плане R&D, чем поставить готовый линукс и дописать туда интерфейс — ну, взяли и поставили.
Со сторалками — не проще. Не основная это их функция и даже не в первой десятке.
В почти любых довольно нормальных машинах имеется диагностический разъем, куда выводится в том числе и интерфейс на контроллер. При наличии легких изменений (а может, даже и без них) можно сделать дополнительное устройство, которое подключается к сущестсвующему контроллеру в одном местеи наружу торчит файфаем, езернетом, почтовыми голубями и т.д.
Это позволит:
— использовать существующее железо без переделки
— не снизит надежность основных процессов
— позволит продавать дополнительное устройство для гиков задорого
— не увеличит стоимость для подавляющего большинства потребителей
Да екарный бабай…
Не берем. Ничего мы не берем. Мы разрабатываем. Самоделки из серии «Ардуино управляет космолетом» как была, так и останется уделом любителей.
Подход «мы щас возьмем воон ту плату, которую делает Вася из Урюпинска и называет ее „МоёДуино“, потом gsm-модуль еще вот отсюда и где-то у меня там тиристоров пачка валялась и соберем клевую стиралку из говна и веток — НЕ РАБОТАЕТ. Один экземпляр для себя — да хоть с виндой внутри, промышленное исполнение для массового производства по определению создается с нуля, без лишних деталей или функциональностей. Ибо дешевле. Для пользователя, в итоге.
Стиральная машина, которая будет глючить раз в десять стирок, полетит из окна нахрен — она должна работать как часы. Она должна стирать. Не писать свои статусы через веб-интерфейс в твиттер, а СТИРАТЬ БЕЛЬЕ. Ей не надо свистелок-перделок и загружаемой мелодии конца стирки.
Она просто должна работать НАДЕЖНО. Линукс, который с железом общается через железо-драйвера-ядро-юзерспейс-ядро-драйвера-железо — по определению менее надежен и избыточен.
Стиральная машина, которая, мать ее, ЗАГРУЖАЕТСЯ??? Проверяет диски, если ее вырубить из сети? У которой дохнет флеш? Которую надо обновлять? Подключать ее в домашнюю сеть, чтобы поглядеть достирала ли она? Потом еще Касперского для стиралки скачивать? Да ну нахер! Это из разряда „фонарик с ethernet, который через веб-интерфейс показывает уровень зарядки батареек“.
Ваша главная ошибка — это то, что Вы думаете, что нормальное промышленное (и даже консумерское) оборудование и то, что слепил энтузиаст из Урюпинска из конструктора Лего — одно и то же, только у энтузиаста оно еще и лучше (потому что с финтифлюшками).
Так вот нифига. То, что делает энтузиаст из Ардуины — нетиражируемое, ненадежное, дорогое и сильно избыточное решение для простой задачи „постирать белье без участия человека“.
Задумайтесь — Вы до конца даже не знаете, что должна делать эта хрень (ну, кроме, уведомления о конце стирки), и извините, но нифига не понимаете в том, как делается надежное оборудование, но рьяно хотите, чтобы лично для вас во все, где есть хоть что-то сложнее таймера, ставили линукс.
У меня есть вкрадчивый осторожный вопрос: а почему не виндовс?..
Вот когда в поезде (метро, самолетах) появится USB-разъем в юзерской зоне для программирования, я перестану ими пользоваться. Мало ли кто плагин для вывода на орбиту туда подсунет…
Там все равно какая-то ОС внутри живет, но нафига им куча лишних прослоек между железом и логикой?
Основное свойство линукса тут — универсальность — хочешь апач поставь, хочет — питон. А им это все не надо, у них конечное количество тредов и это реально надежнее, тупо за счет меньшего количества кода.
В роутере и вправду проще поставить линукс, потому что основная задача роутера — роутинг — в линуксе УЖЕ сделана. А драйверов стиралок там нет…
Если они дадут возможность лазить в стиралку — это им не только туда придется линукс пихать и проц дороже. Им придется еще потом отвечать на остальные вопросы:
1. почему не открываете исходные коды?
2. кто так строит пишет?
3. какого хрена у меня не работает?
4. почему у вас нет техподдержки?
5. почему нету usb (hdmi, rs-485, wi-fi...)?
И заводить отдельную техподдержку в Индии. Так как 99.9% домохозяек хотят нажать на кнопку и приджти, когда запищит, оно того однозначно для них не стоит.
Но Вы, конечно, можете сделать свою машинку с блекджеком и линуксом :)
Чтобы просто, быстро и без плясок со светодиодами ответить на вопросы:
1. Сработало ли прерывание таймера? (поставить там брекпоинт одним кликом мышкой, а не писать туда «Светодиод, зажгись» и изничтожать это в других местах)
2. А почему оно не сработало второй раз или не сработало и в первый? (запихать все регистры таймера в live watch и сразу же посмотреть, какие регистры чему равны)
3. Правильно ли посчиталась контрольная сумма? а на N-ном шаге? А какие были еще три переменные рядом? А адрес последнего посчитанного байта? (просто навести мышкой на нужные переменные после брекпоинта)
4. Завис ли контроллер и в каком месте? (ткнуть в break и увидеть, что он где-то посередине нигде лопатит непрошитую область)
Я уже не говорю о таких штуках, как RTOS, стеки и прочее подобное.
Я недавно портил ChibiOS на STM8S, если бы не дебагер, я бы там сдох на месте. Никакими светодиодами и юартами это не отладить.
1. Сначала все делаем в виртуальном мире — схему, растановку элементов (что сильно проще на экране, чем на макетке — ну, или это будет Горгона из МГТФ :)), и разводку.
2. Корректность разводки определяется атоматически, экономим время на проверку и/или исправления
3. Некоторые вещи на макетке раобтают сильно не так, как в жизни (ОУ с большим усилением, импульсные схемы, ВЧ, и так далее). На макетке сложнее добиться чистоты (отсутствия флюса).
Это только то, что сразу в голову пришло.
Разумеется, это все применимо только, если речь идет не об «пищалка на 555-м таймере».
Мне в последнее время (учитывая наличие правильной бумаги, принтера, ламинатораи бурбулятора с ХЗ) развести простенбкую платку и вытравить ее занимает от часа до трех.
И экономит безумное количество времени впоследствии…
Причем оно «само приползло», но, конечно, радует. За ценники АЗС вообще выплатили сумму авансом под предлогом «я тебя знаю, ты херово не сделаешь». Вот, сижу, делаю, блин :)
Самое радостное из моей радиотехнической карьеры было устройство, которое заказал в 90-х один новый русский для своего дома исервиса, за женой и работниками следить. Радость устройства делится на две части — первая — это, конечно, что встретив заказчика через лет 10, спросил ради прикола про устройство, а он ответил, что до сих пор работает и радует. Для штуковины, собранной на коленке, удивило. Вторая радость находится вот тут: king2.net/files/docs/device.doc. Обратите внимание на аббревиатуру устройства (это я после озвучивания причин так его назвал).
Что же касается собственно топика, хочу заметить только, что разработка устройств «на один раз» и «мелкосерийных» сильно отличается. Я, например, должен сейчас учитывать такие вещи, как удобство монтажа, удобство ремонта и удаленной диагностики, долговечность и «классность» применяемой комплектухи (типа а кто производитель керамических кондеров? а какие отзывы? а может сделать запас по напряжению не в полтора, а в три раза?), особенности обслуживания (например, защита RS485 сделана так, что при более-менее страшном вмешательстве типа 220 вольт в линию, один элемент гарантированно перегорает, второй гарантированно замыкается, и оба выводные, то есть чтобы оно снова заработало, но уже без защиты — нужны только кусачки), стоимость автоматического монтажа на станке и прочее, прочее, прочее… это реально жесть, каждый раз возникает какая-нибудь новая фигня типа «лучше ставить хреновины в другом корпусе и подороже, потому что это экономит на автометическом монтаже позже».
Особенно забавны ситуации, когда купить 300 кондеров или 500 встает ровно в те же самые деньги.
А вообще-то, конечно, да, работа как-то сама тебянаходит, приходится выбирать. Правда, я в Москве и тут цены несколько другие, но и требования тоже.
1. Не надо пользоваться говнофлюсами типа канифоли, паяльной кислоты, аспирина и прочего из прошлого века. В магазинах продаются отличные припои с флюсоми жидкие флюсы. Мой выбор — припои с воддсмывным флюсом и водосмывный флюс сам по себе. Купить можно в магазинах «Профи» (siriust.ru), если немного надо. В Чип-И-Дипе тоже можно, но там раза в 2.5 дороже, хотя если потребовалось в воскресенье вечером и срочняк — то можно и там.
2. Правильно выбирайте температуру паяльника. Если слишком маленькая — флюс сгорит до того как припой расплавится, слишком большая — не успеет сделать свою работу. В зависимости от массы жала рекомендую что-то в диапазоне 270-330, определяется экспериментально. То, что пишет пальная станция — не обязательно совпадает с реальной температурой.
3. Правильно лудите жало. Если жало имеет вид серебристый — это необгораемой жало, к нему надо купить этакую мочалочку, в сухом виде жесткая, в мокром становится мягкой. Об нее жало надо вытирать. Никаких надфилей и зачистки жала механическим способом!
4. На жале таким образом будет немного припоя. С одного конца жалом тыкаете в припаиваемые детали, другой рукой НЕМНОГО припоя с флюсом. Ждете, пока припой растечется по детали и они прогреются (сухим жалом греть обе спаиваемые поверхности — только время зря терять), далее скармливаете еще немного припоя, и образуется очень красивое место пайки. Проверяете — гальтель (кусочек припоя) должна быть блестящей и гладкой.
5. Если флюса из припоя маловато — кисточкой смазываете место пайки. Учтите, что в флюсе есть активные вещества, они расходуются при пайке и, даже если место пайки выглядит сырым, но вы там паяли уже пару раз — надо флюса добавить.
6. SMD паяются пастой и феном. Паяльник — от лукавого, станции начального уровня с фенами стоят недорого, попробуйте. Пасту тоже берите с водосмывным флюсом.
7. Водосмывный флюс — рулез форева. После траха вприсядку с отмывкой бензиново-изопропанольной смесью, в разных банках с разной степенью чистоты и так далее я перешел на водосмывный флюс и ура. Просто помыл под теплой водой, ополоснул в дистилляте — плата красивая и чистая, нигде ничем не воняет.
Это что в голову на первое время пришло.
Можно спросить, кто там еще кроме атмела был в списке и какие были требования?
А ответ такой — я бы не дал заказчику выбирать платформу, либо отказался бы делать.
Не дело это — учиться работать прямо по ходу работы за деньги.
У меня был как-то случай, когда человек попросил юзать STM8, я тогда только начинал с ним работать, получил вполне оправданный отказ, то есть либо к другому разработчику, либо на atmega8. Да, дороже, но на этом я точно знаю, что сделаю.
Заказчик подумал и выбрал атмегу.
Другое дело, что если они отвечают за работу машины — они туда никого не пускают, и это нормально.
Да, это не отвечает требованиям гиков. Зато это отвечает требованиям домохозяек, которым нужна Одна Большая Кнопка «сделать хорошо».
Вы пробовали роутером торренты качать, в качестве сетевого диска его использовать, фильмы оттуда смотреть, в качестве принт-сервера? Я пробовал, скажу честно — говно во всех категориях, кроме собственно роутинга.
Если оно залипать будет на простейших функциях, то-таки да, оно сможет мне через SNMP раз в десять секунд честно сообщать, что не успевает контролировать энкодер :)
В качестве примеров Вы почему-то всегда приводите те устройства, подавляющее большинство функций которых УЖЕ реализованы в линуксе, то есть сетевые устройства, работающие с потоками данных — роутеры, VOIP, и так далее. Стиралка к таковым не относится.
Вот чайнику, с таким подходом, нужно ли это?
Заметьте, линукс в телевизорах появился ровно тогда, когда стало популярным смотреть видео через интернет и с сетевых дисков (на которые качают торренты). До этого момента оно там нафиг нужно не было и его там-таки не было.
Когда стало нужно — оказалось, что свое все то же самое делать геморройнее в плане R&D, чем поставить готовый линукс и дописать туда интерфейс — ну, взяли и поставили.
Со сторалками — не проще. Не основная это их функция и даже не в первой десятке.
В почти любых довольно нормальных машинах имеется диагностический разъем, куда выводится в том числе и интерфейс на контроллер. При наличии легких изменений (а может, даже и без них) можно сделать дополнительное устройство, которое подключается к сущестсвующему контроллеру в одном местеи наружу торчит файфаем, езернетом, почтовыми голубями и т.д.
Это позволит:
— использовать существующее железо без переделки
— не снизит надежность основных процессов
— позволит продавать дополнительное устройство для гиков задорого
— не увеличит стоимость для подавляющего большинства потребителей
Это — именно инженерное решение.
Не берем. Ничего мы не берем. Мы разрабатываем. Самоделки из серии «Ардуино управляет космолетом» как была, так и останется уделом любителей.
Подход «мы щас возьмем воон ту плату, которую делает Вася из Урюпинска и называет ее „МоёДуино“, потом gsm-модуль еще вот отсюда и где-то у меня там тиристоров пачка валялась и соберем клевую стиралку из говна и веток — НЕ РАБОТАЕТ. Один экземпляр для себя — да хоть с виндой внутри, промышленное исполнение для массового производства по определению создается с нуля, без лишних деталей или функциональностей. Ибо дешевле. Для пользователя, в итоге.
Стиральная машина, которая будет глючить раз в десять стирок, полетит из окна нахрен — она должна работать как часы. Она должна стирать. Не писать свои статусы через веб-интерфейс в твиттер, а СТИРАТЬ БЕЛЬЕ. Ей не надо свистелок-перделок и загружаемой мелодии конца стирки.
Она просто должна работать НАДЕЖНО. Линукс, который с железом общается через железо-драйвера-ядро-юзерспейс-ядро-драйвера-железо — по определению менее надежен и избыточен.
Стиральная машина, которая, мать ее, ЗАГРУЖАЕТСЯ??? Проверяет диски, если ее вырубить из сети? У которой дохнет флеш? Которую надо обновлять? Подключать ее в домашнюю сеть, чтобы поглядеть достирала ли она? Потом еще Касперского для стиралки скачивать? Да ну нахер! Это из разряда „фонарик с ethernet, который через веб-интерфейс показывает уровень зарядки батареек“.
Ваша главная ошибка — это то, что Вы думаете, что нормальное промышленное (и даже консумерское) оборудование и то, что слепил энтузиаст из Урюпинска из конструктора Лего — одно и то же, только у энтузиаста оно еще и лучше (потому что с финтифлюшками).
Так вот нифига. То, что делает энтузиаст из Ардуины — нетиражируемое, ненадежное, дорогое и сильно избыточное решение для простой задачи „постирать белье без участия человека“.
Задумайтесь — Вы до конца даже не знаете, что должна делать эта хрень (ну, кроме, уведомления о конце стирки), и извините, но нифига не понимаете в том, как делается надежное оборудование, но рьяно хотите, чтобы лично для вас во все, где есть хоть что-то сложнее таймера, ставили линукс.
У меня есть вкрадчивый осторожный вопрос: а почему не виндовс?..
Там все равно какая-то ОС внутри живет, но нафига им куча лишних прослоек между железом и логикой?
Основное свойство линукса тут — универсальность — хочешь апач поставь, хочет — питон. А им это все не надо, у них конечное количество тредов и это реально надежнее, тупо за счет меньшего количества кода.
В роутере и вправду проще поставить линукс, потому что основная задача роутера — роутинг — в линуксе УЖЕ сделана. А драйверов стиралок там нет…
1. почему не открываете исходные коды?
2. кто так
строитпишет?3. какого хрена у меня не работает?
4. почему у вас нет техподдержки?
5. почему нету usb (hdmi, rs-485, wi-fi...)?
И заводить отдельную техподдержку в Индии. Так как 99.9% домохозяек хотят нажать на кнопку и приджти, когда запищит, оно того однозначно для них не стоит.
Но Вы, конечно, можете сделать свою машинку с блекджеком и линуксом :)
1. Сработало ли прерывание таймера? (поставить там брекпоинт одним кликом мышкой, а не писать туда «Светодиод, зажгись» и изничтожать это в других местах)
2. А почему оно не сработало второй раз или не сработало и в первый? (запихать все регистры таймера в live watch и сразу же посмотреть, какие регистры чему равны)
3. Правильно ли посчиталась контрольная сумма? а на N-ном шаге? А какие были еще три переменные рядом? А адрес последнего посчитанного байта? (просто навести мышкой на нужные переменные после брекпоинта)
4. Завис ли контроллер и в каком месте? (ткнуть в break и увидеть, что он где-то посередине нигде лопатит непрошитую область)
Я уже не говорю о таких штуках, как RTOS, стеки и прочее подобное.
Я недавно портил ChibiOS на STM8S, если бы не дебагер, я бы там сдох на месте. Никакими светодиодами и юартами это не отладить.
1. Сначала все делаем в виртуальном мире — схему, растановку элементов (что сильно проще на экране, чем на макетке — ну, или это будет Горгона из МГТФ :)), и разводку.
2. Корректность разводки определяется атоматически, экономим время на проверку и/или исправления
3. Некоторые вещи на макетке раобтают сильно не так, как в жизни (ОУ с большим усилением, импульсные схемы, ВЧ, и так далее). На макетке сложнее добиться чистоты (отсутствия флюса).
Это только то, что сразу в голову пришло.
Разумеется, это все применимо только, если речь идет не об «пищалка на 555-м таймере».
Мне в последнее время (учитывая наличие правильной бумаги, принтера, ламинатораи бурбулятора с ХЗ) развести простенбкую платку и вытравить ее занимает от часа до трех.
И экономит безумное количество времени впоследствии…
Хорошо, очень хорошо, что они в это время не меняли сервера :)