|
Разработать устройство, Ищу разработчика для создания устройств |
|
|
|
Sep 15 2018, 14:04
|
Группа: Новичок
Сообщений: 4
Регистрация: 15-09-18
Пользователь №: 107 507

|
Доброго времени суток!
Ищу разработчика для разработки устройства, 4х канальный релейный блок. Нужно выполнить следующие работы: - разработать схему - разработать плату - подобрать компоненты - разработать корпус - сделать прототип - написать инициализирующий слой для периферии (инициализация CAN, входов и выходов. Прошивку писать не надо), среда разработки Keil
Требования к МК. - stm32хх - ОЗУ не менее 20 кб - Flash не менее 64 кб - Наличие CAN интерфейса - Крайне желательно наличие EEPROM не менее 256 байт
Требования к готовому устройству. - CAN интерфейс - 4 реле 10А 250В. Нагрузка может быть моторы, лампы, домашние приборы. Крайне важно чтобы реле не "залипали". - 1 светодиод для индикации состояния прибора - 1 кнопка, будет использоваться для перевода состояния устройства или сброса устройства. - Питание устройства от 24 вольт - Готовое устройство на DIN рейку - Клеммы с болтовым зажимом
Для связи: телергамм @macslim
|
|
|
|
|
 |
Ответов
|
Sep 16 2018, 00:00
|
Группа: Участник
Сообщений: 7
Регистрация: 29-08-18
Пользователь №: 107 111

|
Корпус под DIN-рейку разрабатывать не нужно, продаются готовые. Питание внешнее? Реле можно использовать твердотельные, уж точно не "залипнет" Проц. можно использовать попроще. avm0465@inbox.ru
|
|
|
|
|
Sep 16 2018, 06:01
|
Группа: Новичок
Сообщений: 4
Регистрация: 15-09-18
Пользователь №: 107 507

|
Цитата(MAVR @ Sep 16 2018, 01:00)  Корпус под DIN-рейку разрабатывать не нужно, продаются готовые. Питание внешнее? Реле можно использовать твердотельные, уж точно не "залипнет" Проц. можно использовать попроще. avm0465@inbox.ru Корпус можно и готовый. Питание внешнее. Нужно именно 20 кб ОЗУ и 64 кб Flash, так как будет обновление прошивки устройства по CAN протоколу. Если в будущем протокол будет менее требовательным к памяти, то проще заказать новое устройство с МК попроще. e-mail: macslim[]mail.ru
|
|
|
|
|
Sep 16 2018, 07:03
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(jcxz @ Sep 16 2018, 09:42)  Интересно - как это рассчитано? По какой формуле?  Многовато. У меня есть контроллер на STM32F042F4. Распределение памяти такое: - 5К - загрузчик; - 10К - приложение; - 1К - пользовательский скрипт. Контроллер работает по CAN со своим протоколом. Можно обновлять прошивку, можно переписывать пользовательский скрипт. Скрипты сложные, на основе графов. Выполняются параллельно. Много диагностических функций. На борту 5 аналоговых входов, 7 дискретных выходов, 5 из который с ШИМ-управлением. В загрузчике сейчас примерно 270 байт еще свободно. В приложении - чуть больше 900 свободных байт. Код на Си без асм-вставок. Да, ОЗУ всего 6К.
|
|
|
|
|
Sep 16 2018, 07:25
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(adnega @ Sep 16 2018, 10:03)  Распределение памяти такое: - 5К - загрузчик; - 10К - приложение; ... В загрузчике сейчас примерно 270 байт еще свободно. В приложении - чуть больше 900 свободных байт. Когда устройство заранее разрабатывается с запасом по памяти (ОЗУ/flash) всего в 9% и даже в ~5%, то с большой вероятностью такое устройство придётся полностью переделывать в скором времени. Малейший баг, выявленный в будущем, который потребует небольшого увеличения прошивки, обернётся необходимостью переделки всей партии устройств. Или переписывания большой части кода на ассемблере. Тем более когда запас всего == 900байт, то даже если просто выйдет новая версия компилятора с новой стандартной библиотекой в его составе, то код может перестать влезать. Обычно советуют оставлять запас 30%-50% вроде по флешь. На больших объёмах флешь запас можно уменьшить. А такой малый запас - это уже ошибка проектирования архитектуры устройства.
|
|
|
|
|
Sep 16 2018, 07:51
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(jcxz @ Sep 16 2018, 10:25)  Когда устройство заранее разрабатывается с запасом по памяти (ОЗУ/flash) всего в 9% и даже в ~5%, то с большой вероятностью такое устройство придётся полностью переделывать в скором времени. Я написал все что надо, а потом дополнил тем, на что памяти хватило. Есть несколько вариантов приложений с поддержкой ИК-пультов, датчиков температуры DS и т.п. В одну прошивку все не влезает, но ключиками можно собрать прошивку под свою задачу и без хлопот обновиться. Там где нужно ВСЕ, есть решение где есть все и куча памяти свободной.
|
|
|
|
|
Sep 16 2018, 09:56
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AlexandrY @ Sep 16 2018, 12:23)  И как потом, не тяжко поддерживать заросли веток? Очень знакомая ситуация. На прошлой работе у нас был такой разработчик. Заложил МК с ресурсами по минимуму: "И так хватит, сейчас ведь влезает. Зато этот МК я хорошо знаю по прошлым проектам." Но аппетит приходит во время еды: у заказчиков начали появляться хотелки, плюс - в ПО оказалось много багов, которые надо править. Ну и этому коллеге естественно ничего не оставалось делать как пойти по пути размножения веток версий прошивки для разных наборов программных хотелок и аппаратных исполнений устройства. В конце-концов дошло до того, что чтобы внести элементарную правку в код или поддержку новой простейшей фичи (которую мы добавляли в другие устройства за пару дней вместе с тестированием) он тратил на это по месяцу. Пока оптимизирует чтобы во флешь кое-как втиснуть, везде во все ветки прошивки внесёт, несколько раз переделает. Пока потом всё это оттестирует, найдёт все версии железа, которые надо протестить. Сидел ежедневно да самого вечера - перерабатывал каждый день: я приходил на работу - он уже там, уходил - он ещё там. И начальник его всё время шпынял - "как до сих пор не готово??!" Потом он уже признал свою ошибку, но сделать уже ничего было нельзя. Подшучивали над ним по этому поводу постоянно. В конце-концов он уволился. Хотя может конечно и не из-за этого...
|
|
|
|
|
Sep 16 2018, 10:55
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(jcxz @ Sep 16 2018, 12:56)  Заложил МК с ресурсами по минимуму ОЗУ 6К и ПЗУ 16К это минимум? В эти объемы можно уложить нехилый функционал (пример я привел), а не то что 4 реле по CAN. Я не знаю как ваши фирмы работают, но у нас есть пример: толстый контроллер на базе STM32F407VG. На нем можем сделать все что угодно и нет никаких проблем с памятью, скорости разработки, отладки и т.п. А есть задачки, для которых вполне хватает STM32F030K6 (причем основные расходы ПЗУ на шрифты). Правда, затем заменили на STM32F051K8 именно из соображений, чтоб по памяти не упираться. Зачем использовать дорогой, трудоемкий, габаритный контроллер, когда задачу прекрасно решает мелкий во всех смыслах контроллер? Нужно понимать, что если мы не можем решить задачу на мелкоте, то на фулфарше она решается гарантированно, поэтому развиваем оба. Кста, сейчас появился промежуточный контроллер с плюсами обоих на STM32F030CC. По скорости разработки никогда описываемых вами ужасов не было, типовая задачка занимает 2-4 часа вместе со сборкой стенда и документированием. На той неделе был на совещании - предлагают мини-ПК в довесок к STM32 ставить, чтоб был WiFi, в устройстве типа, получил-отправил пакет по CAN (авто-диагностика). Так что с оверхэдом у нас все в порядке  .
|
|
|
|
|
Sep 16 2018, 11:24
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(adnega @ Sep 16 2018, 13:55)  ОЗУ 6К и ПЗУ 16К это минимум? Вы передёргиваете. Позволю себе напомнить: Цитата(adnega @ Sep 16 2018, 10:03)  Распределение памяти такое: ... - 10К - приложение; ... В приложении - чуть больше 900 свободных байт. Итого: да - 16К - это слишком мало если из них свободных остаётся всего 900 байт (~5.5%). Цитата(adnega @ Sep 16 2018, 13:55)  В эти объемы можно уложить нехилый функционал (пример я привел), а не то что 4 реле по CAN. Я не знаю какой функционал туда можно уложить и мне это неинтересно. Я говорил про ваш случай, когда оставлено всего 5.5% свободной флешь. Цитата(adnega @ Sep 16 2018, 13:55)  Нужно понимать, что если мы не можем решить задачу на мелкоте, то на фулфарше она решается гарантированно, поэтому развиваем оба. Из этих слов видно, что Вы ещё не имели дела с серийным производством и с множеством заказчиков. С тех.поддержкой и сопровождением этих заказчиков. Да если ещё проект не один, а их множество уже сделанных. Иначе бы уже наелись проблем с поддержкой этого зоопарка. Ну тогда жизнь - она со временем научит... шишками Цитата(adnega @ Sep 16 2018, 13:55)  типовая задачка занимает 2-4 часа вместе со сборкой стенда и документированием. ну-ну... типовая мигалка лампочками А бывают задачки в МБ-ы исходного кода. Своего. И файлов - под сотню. Тогда, только чтобы понять в каком модуле глюк, бывает нужно несколько дней.
|
|
|
|
|
Sep 16 2018, 15:08
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(jcxz @ Sep 16 2018, 14:24)  Из этих слов видно, что Вы ещё не имели дела с серийным производством и с множеством заказчиков. С чего вы взяли? С того, что без шишек умею работать? Контроллеры выпускаются серийно с конца 2011 года. Примерно 100 штук ежемесячно. Изделия очень разные, Заказчиков множество. В техподдержке один человек, который часто привлекается к другим задачам. Конкретно за STM32F042F4 скажу, что это делал себе для умного дома. Использую одну прошивку с базовым функционалом. Один работает в подсветке кухни, второй рулит санузлом. Логика элементарная: плавно включить-выключить свет, по датчику дверцы или движению. При этом по CAN можно узнать и температуру МК, и напряжение питания, максимальную глубину стека, uptime, хеши объектов и т.п. Для решения основной задачи это все не нужно, и добавил только потому, что место оставалось. За вечер превратил аналогичный контроллер в 9-канальный измеритель температуры. По CAN рассылает сообщения с температурой датчиков, ID которых заданы в энергонезависимых переменных. Еще делал какую-то прошивку для управления кондиционером, а другую со сбором показаний весов с ИК-выходом, но подробностей уже не помню. Есть STM32F042F6 с 32К ПЗУ, можно их поставить, но зачем, если и в 16К все влезает? Сенсорные выключатели я делаю на STM32F042K6, дык, фулфарш-прошивка занимает около 11К, при выделенных 20К. Там функционал тот же, только всего больше, плюс обработка емкостных сенсоров. Самый крутой контроллер для умного дома на STM32F407 использует 42К из выделенных 128К. По функционалу там и Ethernet, и uSD, дисплей, GPS для часов, датчики давления/влажности/температуры, сервер времени и конфигураций в добавку ко всему ранее сказанному. Я не могу придумать код на 64К - факт, подтвержденный временем.
|
|
|
|
|
Sep 16 2018, 18:08
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(jcxz @ Sep 16 2018, 18:27)  с парой картинок Картинки, шрифты, звуковые файлы, обновления прошивок, пользовательские скрипты - это все лежит на uSD-карте. Я говорил про сам код - 64К хватит каждому  Цитата У меня тут близится к релизу простой загрузчик по UART и по CAN, он уже занимает 70 КБ с максимальной оптимизацией по размеру. Для простого что-то многовато. У меня загрузчик и образы расшифровывает, и CRC32 считает, и в приложение функции экспортирует.
|
|
|
|
Сообщений в этой теме
Macslim Разработать устройство Sep 15 2018, 14:04 smart_pic Реально не понятно зачем для управления 4реле по C... Sep 15 2018, 16:53 C2000 Цитата(smart_pic @ Sep 15 2018, 19:53) Ре... Sep 16 2018, 17:00   Macslim Цитата(jcxz @ Sep 16 2018, 07:42) Интерес... Sep 16 2018, 06:54    Macslim Цитата(adnega @ Sep 16 2018, 08:03) Много... Sep 16 2018, 07:23       adnega Цитата(AlexandrY @ Sep 16 2018, 12:23) И ... Sep 16 2018, 09:36        iosifk Цитата(jcxz @ Sep 16 2018, 12:56) Очень з... Sep 16 2018, 10:11             jcxz RE: Разработать устройство Sep 16 2018, 18:58             AlexandrY Цитата(adnega @ Sep 16 2018, 21:08) Для п... Sep 16 2018, 19:14              jcxz Цитата(AlexandrY @ Sep 16 2018, 22:14) В ... Sep 16 2018, 19:42               adnega Цитата(jcxz @ Sep 16 2018, 22:42) Так что... Sep 17 2018, 04:17                AlexandrY Цитата(adnega @ Sep 17 2018, 07:17) Все с... Sep 17 2018, 05:03                 adnega Цитата(AlexandrY @ Sep 17 2018, 08:03) Мн... Sep 17 2018, 05:27                  jcxz Цитата(adnega @ Sep 17 2018, 08:27) У мен... Sep 17 2018, 06:13                   adnega Цитата(jcxz @ Sep 17 2018, 09:13) Зачем т... Sep 17 2018, 06:38                    jcxz Цитата(adnega @ Sep 17 2018, 09:38) Обращ... Sep 17 2018, 06:59                  AlexandrY Цитата(adnega @ Sep 17 2018, 08:27) Прост... Sep 17 2018, 06:48                   adnega Цитата(AlexandrY @ Sep 17 2018, 09:48) Эт... Sep 17 2018, 07:07                    AlexandrY Цитата(adnega @ Sep 17 2018, 10:07) ... Sep 17 2018, 07:31                     adnega Цитата(AlexandrY @ Sep 17 2018, 10:31) Вс... Sep 17 2018, 07:35           AlexandrY Цитата(adnega @ Sep 16 2018, 18:08) Я не ... Sep 16 2018, 16:48    AlexandrY Цитата(adnega @ Sep 16 2018, 10:03) У мен... Sep 16 2018, 07:39 leocat info at open-plc.com Sep 16 2018, 06:06 AlexandrY Цитата(Macslim @ Sep 15 2018, 17:04) Ищу ... Sep 16 2018, 06:32 a123-flex Цитата(AlexandrY @ Sep 16 2018, 10:32) И ... Sep 17 2018, 07:23  AlexandrY Цитата(a123-flex @ Sep 17 2018, 10:2... Sep 17 2018, 07:45   adnega Цитата(AlexandrY @ Sep 17 2018, 10:45) Т.... Sep 17 2018, 07:50    AlexandrY Цитата(adnega @ Sep 17 2018, 10:50) Это р... Sep 17 2018, 08:01     adnega Цитата(AlexandrY @ Sep 17 2018, 11:01) Гд... Sep 17 2018, 08:21     jcxz Цитата(AlexandrY @ Sep 17 2018, 11:01) Тр... Sep 17 2018, 09:02      gosha-z Цитата(jcxz @ Sep 17 2018, 12:02) Да уж..... Sep 17 2018, 10:07   a123-flex Цитата(AlexandrY @ Sep 17 2018, 11:45) Че... Sep 17 2018, 08:17    AlexandrY Цитата(a123-flex @ Sep 17 2018, 11:1... Sep 17 2018, 08:35     adnega Цитата(AlexandrY @ Sep 17 2018, 11:35) Вы... Sep 17 2018, 08:54      a123-flex Цитата(adnega @ Sep 17 2018, 11:54) Прям ... Sep 17 2018, 09:00
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|