Перейти к содержанию
    

Разработать устройство

Доброго времени суток!

 

Ищу разработчика для разработки устройства, 4х канальный релейный блок.

Нужно выполнить следующие работы:

- разработать схему

- разработать плату

- подобрать компоненты

- разработать корпус

- сделать прототип

- написать инициализирующий слой для периферии (инициализация CAN, входов и выходов. Прошивку писать не надо), среда разработки Keil

 

Требования к МК.

- stm32хх

- ОЗУ не менее 20 кб

- Flash не менее 64 кб

- Наличие CAN интерфейса

- Крайне желательно наличие EEPROM не менее 256 байт

 

Требования к готовому устройству.

- CAN интерфейс

- 4 реле 10А 250В. Нагрузка может быть моторы, лампы, домашние приборы. Крайне важно чтобы реле не "залипали".

- 1 светодиод для индикации состояния прибора

- 1 кнопка, будет использоваться для перевода состояния устройства или сброса устройства.

- Питание устройства от 24 вольт

- Готовое устройство на DIN рейку

- Клеммы с болтовым зажимом

 

Для связи: телергамм @macslim

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Реально не понятно зачем для управления 4реле по CAN такие требования к процессору? Студент?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Корпус под DIN-рейку разрабатывать не нужно, продаются готовые.

Питание внешнее?

Реле можно использовать твердотельные, уж точно не "залипнет"

Проц. можно использовать попроще.

[email protected]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Корпус под DIN-рейку разрабатывать не нужно, продаются готовые.

Питание внешнее?

Реле можно использовать твердотельные, уж точно не "залипнет"

Проц. можно использовать попроще.

[email protected]

Корпус можно и готовый.

Питание внешнее.

Нужно именно 20 кб ОЗУ и 64 кб Flash, так как будет обновление прошивки устройства по CAN протоколу. Если в будущем протокол будет менее требовательным к памяти, то проще заказать новое устройство с МК попроще.

e-mail: macslim[]mail.ru

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ищу разработчика для разработки устройства, 4х канальный релейный блок.

Чтоб не залипали ставят последовательно 2-а реле.

Поэтому надо писать не 4-е, а 8-мь реле, причем реле класса Safety.

И процессор здесь не нужен. Такое делается на экспандерах типа MCP25055

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нужно именно 20 кб ОЗУ и 64 кб Flash, так как будет обновление прошивки устройства по CAN протоколу.

Интересно - как это рассчитано? По какой формуле? :wacko:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересно - как это рассчитано? По какой формуле? :wacko:

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

 

Чтоб не залипали ставят последовательно 2-а реле.

Поэтому надо писать не 4-е, а 8-мь реле, причем реле класса Safety.

И процессор здесь не нужен. Такое делается на экспандерах типа MCP25055

Спасибо за совет.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересно - как это рассчитано? По какой формуле? :wacko:

Многовато.

У меня есть контроллер на STM32F042F4.

Распределение памяти такое:

- 5К - загрузчик;

- 10К - приложение;

- 1К - пользовательский скрипт.

 

Контроллер работает по CAN со своим протоколом. Можно обновлять прошивку, можно переписывать пользовательский скрипт.

Скрипты сложные, на основе графов. Выполняются параллельно. Много диагностических функций.

На борту 5 аналоговых входов, 7 дискретных выходов, 5 из который с ШИМ-управлением.

 

В загрузчике сейчас примерно 270 байт еще свободно. В приложении - чуть больше 900 свободных байт.

Код на Си без асм-вставок. Да, ОЗУ всего 6К.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Многовато.

У меня есть контроллер на STM32F042F4.

Распределение памяти такое:

- 5К - загрузчик;

- 10К - приложение;

- 1К - пользовательский скрипт.

 

Контроллер работает по CAN со своим протоколом. Можно обновлять прошивку, можно переписывать пользовательский скрипт.

Скрипты сложные, на основе графов. Выполняются параллельно. Много диагностических функций.

На борту 5 аналоговых входов, 7 дискретных выходов, 5 из который с ШИМ-управлением.

 

В загрузчике сейчас примерно 270 байт еще свободно. В приложении - чуть больше 900 свободных байт.

Код на Си без асм-вставок. Да, ОЗУ всего 6К.

Согласен, с Вами, но требования такие, дело в том что мы разработали протокол который имеет множество функций и из-за этого такие требования. Я был бы очень рад, если бы требования к МК были бы ниже. Но пока протокол и полезная нагрузка требуют достаточного количества памяти. Возможно в будущем удастся оптимизировать, под stm32f042.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Распределение памяти такое:

- 5К - загрузчик;

- 10К - приложение;

...

В загрузчике сейчас примерно 270 байт еще свободно. В приложении - чуть больше 900 свободных байт.

Когда устройство заранее разрабатывается с запасом по памяти (ОЗУ/flash) всего в 9% и даже в ~5%, то с большой вероятностью такое устройство придётся полностью переделывать в скором времени. Малейший баг, выявленный в будущем, который потребует небольшого увеличения прошивки, обернётся необходимостью переделки всей партии устройств. Или переписывания большой части кода на ассемблере. Тем более когда запас всего == 900байт, то даже если просто выйдет новая версия компилятора с новой стандартной библиотекой в его составе, то код может перестать влезать.

Обычно советуют оставлять запас 30%-50% вроде по флешь. На больших объёмах флешь запас можно уменьшить.

А такой малый запас - это уже ошибка проектирования архитектуры устройства.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня есть контроллер на STM32F042F4.

...

Контроллер работает по CAN со своим протоколом.

У серии MKE18F есть встроенный загрузчик по CAN в ROM-е и контроль ошибок Flash и RAM с ECC.

Самое надежное решение, ИМХО.

Если нужно чтоб релюхи не залипали. :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда устройство заранее разрабатывается с запасом по памяти (ОЗУ/flash) всего в 9% и даже в ~5%, то с большой вероятностью такое устройство придётся полностью переделывать в скором времени.

Я написал все что надо, а потом дополнил тем, на что памяти хватило.

Есть несколько вариантов приложений с поддержкой ИК-пультов, датчиков температуры DS и т.п.

В одну прошивку все не влезает, но ключиками можно собрать прошивку под свою задачу и без

хлопот обновиться. Там где нужно ВСЕ, есть решение где есть все и куча памяти свободной.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть несколько вариантов приложений с поддержкой ИК-пультов, датчиков температуры DS и т.п.

И как потом, не тяжко поддерживать заросли веток?

Это как минимум добавляет рутины.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И как потом, не тяжко поддерживать заросли веток?

Тяжело. А какие варианты?

Причем в части софта нет никаких проблем, а вот документация - самое слабое место.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...