Несколько вопросов по arduino.

Тема в разделе "Arduino & Shields", создана пользователем DKo, 19 янв 2015.

  1. DKo

    DKo Нерд

    Добрый день, Уважаемые Знатоки!

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

    1) Кто-нибудь проверяю Arduino на надежность в суровых условиях нашего климата? Очень интересует поведение контроллера при температурах от -40 до +30 градусов при повышенной влажности. Информация о предельной температуре для отдельных элементов найти не сложно, но это теория, а важна практика.

    2) Как наилучшим образом сохранить данные в некую постоянную память? EERPOM, установленный на Arduino, не подходит, т.к. имеет строго ограниченное число циклов (для работы устройства необходимо минимум 1 000 000 циклов). Проблема осложняется тем, что хранить необходимо всего 3-4 переменных типа integer, таким образом установка sd-card, на мой взгляд, не выгодна. Возможно, есть какая-то "микропамять" в формате SMD, как устанавливается во "флэшках", но гораздо меньшим объемом?

    3) Есть три шаровых двигателя. Каждый должен поворачиваться строго на +-90 градусов. Каким образом можно минимизировать шанс возникновения погрешности (или хотя бы существенно уменьшить ее), связанной с помехами, т.к. длина соединяющего кабеля может варьироваться в достаточных пределах, или еще с чем-нибудь? Использовать двигатель с наименьшим единичным углом поворота? Использовать подключение напрямую к контроллеру, вместо использования STEP/DIR?

    Заранее Спасибо!
     
  2. ANV

    ANV Гуру

    1. Долгий рассказ про то что ставить Ардуино в индустриальные системы это "Дом юных пионеров" и "Электронщик-бомбила" я пропущу.
    Для защиты от влаги платы покрывают лаком.
    2. FRAM
    3. Нужна обратная связь - энкодеры или концевики, т.к. вам никто не обещает, что шаговый двигатель не пропустит шаг.
     
    DKo нравится это.
  3. Alex19

    Alex19 Гуру

    Не могли бы Вы ANV, когда у Вас появится время пояснить или дать ссылки тут (чтобы не засорять данный топик), чем плохи Ардуино и AVR установленные на них. Ведь ни что не мешает писать код на Си под конкретный процессор и при этом не паять плату самому.

    Заранее благодарен.
     
  4. ANV

    ANV Гуру

    1. AVRы то хорошие, но на сайте Ардуино я не нашел упоминания о том, что плата сделана на industrial компонентах. Т.е. имеет место "неизвестное происхождение компонентов"
    2. Было произнесено слово "влажность" - такую плату конструктивно не очень удобно лаком покрывать
     
    Alex19 нравится это.
  5. Alex19

    Alex19 Гуру

    Спасибо за разъяснение, а то я уж испугался, использую на производстве. Пока только положительные эмоции.
     
  6. Pi-Tone

    Pi-Tone Нерд

    по первому вопросу:
    TQFP 32A 321.8-5.5Industrial (B) (-40°C to 105°C)КупитьЗапрос
    ATMEGA328P-ANRTQFP 32A 321.8-5.5Industrial (B) (-40°C to 105°C)КупитьЗапрос
    ATMEGA328P-AUTQFP 32A 321.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
    ATMEGA328P-AURTQFP 32A 321.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
    ATMEGA328P-MMHMLF (VQFN) 28M1 28201.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
    ATMEGA328P-MMHRMLF (VQFN) 28M1 28201.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
    ATMEGA328P-MNMLF (VQFN) 32M1-A 321.8-5.5Industrial (B) (-40°C to 105°C)КупитьЗапрос
    ATMEGA328P-MNRMLF (VQFN) 32M1-A 321.8-5.5Industrial (B) (-40°C to 105°C)КупитьЗапрос
    ATMEGA328P-MUMLF (VQFN) 32M1-A 321.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
    ATMEGA328P-MURMLF (VQFN) 32M1-A 321.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
    ATMEGA328P-PNPDIP 28P3 281.8-5.5Industrial (B) (-40°C to 105°C)КупитьЗапрос
    ATMEGA328P-PUPDIP 28P3 281.8-5.5Industrial (A) (-40°C to 85°C)КупитьЗапрос
     
    DKo нравится это.
  7. DKo

    DKo Нерд

    Спасибо за ответ.
    1) Мне интересно со стороны прототипирования.

    2) Насколько я понимаю память FRAM основана на сегнетоэлектрических ячейках. В универе, как сейчас помню, задавали вопрос о том как можно их использовать, и ответом была как раз энергонезависимая память, но это новая технология и довольно дорогая же?


    А можно тогда еще вопрос: использую контроллер ШД А4988. При работе двигатель "свистит", пробовал включать различные конденсаторы параллельно питанию, но свист не убирается - меняется только частота.
    Максимальный номинал, которые использовал был 47 мкФ. Есть ли смысл бежать в магазин за 220 мкФ, или же проблема не в питании?
     
  8. geher

    geher Гуру

    1. Саму ардуину в герметичный корпус с влагопоглотителем внутри (чтобы не запотевало при резких перепадах температур). -40 она вроде как должна выдержать, если не замачивать.
    Датчики по возможности тоже прятать в корпус. С климатическими (температура-влажность) придется искать подходящие по условиям. Все проводящие части таких датчиков придется заливать лаком (термоклеем?)..
     
    DKo нравится это.
  9. Megakoteyka

    Megakoteyka Оракул Модератор

    Вот с такой штукой я сейчас ковыряюсь. Память, часы, прочие плюшки. Стоит 1000р. Насколько это дорого - сами решайте. Можно поискать микросхему попроще (только память) и соответственно подешевле.
     
    DKo нравится это.
  10. Alex19

    Alex19 Гуру

    Относительно, посмотрите, что нашел для себя
    http://www.adafruit.com/product/1895
    http://www.wvshare.com/product/FM24CXX-FRAM-Board.htm

    Чипы
    FM24C
     
    Последнее редактирование: 20 янв 2015
    DKo нравится это.
  11. DKo

    DKo Нерд

    Спасибо большое за ответы!
    Теперь есть хорошая тема для изучения)
     
  12. pastry777

    pastry777 Нуб

  13. Alex19

    Alex19 Гуру

    Вы процитировали мое сообщение, предположу вопрос ко мне.

    Сама технология FRAM мне не известна, лучше спросить об этом Megakoteyka, раз он в плотную занимается аналогичными микросхемами.

    Хотя сомневаюсь, что данную микросхему можно использовать как дополнительную ОЗУ для Arduino/AVR.
     
  14. Megakoteyka

    Megakoteyka Оракул Модератор

    Контроллер не имеет поддержки внешней ОЗУ, так что не выйдет. Вечером подробно распишу что да как, если не забуду.
     
  15. Megakoteyka

    Megakoteyka Оракул Модератор

    ОЗУ - это не просто какая-то память. В ОЗУ размещаются переменные, стек и прочие данные, с которыми может работать контроллер. Программный код состоит из инструкций вида "сделать такое-то действие с данными, лежащими там-то". Инструкция может обратиться только к адресу ОЗУ или регистру контроллера. У процессора в ПК есть внешняя шина адреса и данных, к которой подключается внешнее ОЗУ - планки оперативки. При этом адреса этого ОЗУ отображаются в адресное пространство процессора. У контроллера все адресное пространство сидит внутри, его нельзя расширить и нет никакого способа отобразить в это пространству иную память, кроме той, что есть в самом контроллере.
    Даже EEPROM контроллера не может использоваться в качестве ОЗУ, не говоря о любых видах внешней памяти.
    Можно хранить во внешней памяти данные, но для работы с ними потребуется сперва загрузить их в память контроллера и потом (при необходимости) сохранить обратно. Наверняка можно извратиться и подключить к контроллеру планку оперативки, но это все равно будет внешняя память и использовать ее в качестве ОЗУ не получится.
    Та же самая FM33256 подключается по последовательному интерфейсу, а контроллер ничего об этом не знает. Он знает только про свое ОЗУ. Вот поэтому и не получится.
     
    Adm123 и Alex19 нравится это.