Як дізнатись, чи наближається мій рада до кінця життя?


12

У мене є уно, яким я користуюся вже 3 роки. Я буду використовувати його знову в досить критичному проекті, в якому збій з боку ради може бути досить дорогим і небезпечним. Таким чином, я хотів би бути впевнений, що рада не наближається до кінця життя або невдало скоро вийде з ладу. Чи є якийсь надійний спосіб розібратися, як довго плата буде функціонувати без виходу з ладу або зниження продуктивності?


"провал з боку ради може бути досить дорогим і небезпечним". Визначте дороге та визначте небезпечне. Можливо, Arduino не найкраще підходить для вашої програми, можливо, вам потрібно спроектувати безпечний механізм.
джиппі

@jippie Подумайте про невеликі БПЛА та / або інших роботах малого та середнього рівня.
asheeshr

Відповіді:


8

На жаль, існує не так багато способів, як реально визначити "зношення" в контексті твердотільної електроніки.

Можливо, найімовірніше, що найвищі помилки - це електролітичні конденсатори та роз'єми.


По-перше, якщо ви використовуєте процесор ATmega для чогось, що могло б травмувати когось, ЗВ'ЯЖІТЬСЯ АТМЕЛЬ І говорити про безпечні заходи . Процесор ATmega, який використовується у більшості моделей arduino, не оцінюється для використання в таких ситуаціях.

В КОЖНОму аркуші:

Продукти Atmel не призначені, дозволені або гарантовані для використання в якості компонентів у додатках, призначених для підтримки або підтримки життя.

Зараз, реально, це, мабуть, здебільшого адвокатське відштовхування, але все ж слід вжити відповідних запобіжних заходів.

Дійсно, хоча на загальній платі arduino немає нічого, що справді зношується, крім роз'ємів, чому ви намагаєтесь заощадити 30 доларів при потенційних величезних витратах? Просто придбайте нову дошку.

Я також настійно рекомендую, що ви вибрали плату з SMT ATmega328P, оскільки це вилучає контакти IC-розетки зі списку проблем. Якщо можливо, також вийміть безпосередньо штифтові заголовки та припаяйте дроти до плати. Постарайтеся мінімізувати роз’єми, оскільки вони є частими точками відмови.


4

Одним із розділів Ардуїно, який, ймовірно, з часом стане ненадійним, є його пам’ять. У мікроконтролері, що використовується на платформах Arduino на основі avr, є три пули пам'яті :

  • Флеш-пам’ять (програмний простір) - це місце, де зберігається ескіз Arduino.
  • SRAM (статична пам'ять з випадковим доступом) - це місце, де ескіз створює та маніпулює змінними під час його запуску.
  • EEPROM - це простір пам'яті, який програмісти можуть використовувати для зберігання довгострокової інформації.

Пам'ять - це одна частина плати, яку можна перевірити та перевірити, і, таким чином, оцінити надійність / здоров'я. Дуже основним способом перевірки пам’яті було б написання певного 8-бітного шаблону (байтового символу) над кожною адресою в пам'яті, а потім зчитування значення, присутнього з кожної адреси. Якщо значення, яке було записано, відповідає значенню, яке читається, то конкретний 8-бітовий блок в пам'яті функціонує правильно в даний момент.

Знос пам’яті ПЗУ зазвичай відбувається за блочним малюнком, тобто n * 8-бітні блоки з часом деградують. Отже, для 2-байтного мікросхеми ROM, стан здоров'я мікросхеми можна оцінити, записуючи та читаючи з кожного байта на мікросхемі, та обчислюючи відсоток правильно функціонуючих блоків. Якщо відсоток несправних блоків значний (15% -20%), це означає, що пам'ять, швидше за все, вийде з ладу.

Тестовий код можна записати, використовуючи окремі методи для кожного з розділів пам'яті.

SRAM

Будь-які змінні, оголошені статично або динамічно, розподіляються на SRAM. Отже, ми могли б оголосити великий масив символів (~ 2000) і заповнити кожен елемент 255 (усі біти 1). Тоді ми можемо спробувати прочитати кожен із цих елементів і побачити, чи дійсно значення, яке читається, є 255.

EEPROM

За допомогою EEPROM можна управляти за допомогою бібліотеки EEPROM . Бібліотека надає функції для читання та запису з певних місць в EEPROM. Отже, всі адреси пам'яті можна перевірити, просто перебравшись на весь простір пам'яті. Для цієї операції знадобиться 500 записів і читання.

Залежно від використання плати, EEPROM, швидше за все, вийде з ладу першим, але не є критичним для роботи плати.

Спалах

Дані можна зберігати на флеш-пам'яті за допомогою PROGMEMдирективи. Як і SRAM, тут може бути оголошено і ініціалізовано великий масив. Потім значення можна прочитати і перевірити.


Це зосереджено саме на мікроконтролері, що навряд чи буде найменш надійним бітом на платі. Спалах оцінюється в 10 к циклів - цього дуже важко досягти. Також тест показав би лише те, що він працює зараз, а не тоді, коли його додають у додаток. Набагато простіше, звичайно, просто перевірити пам'ять програми, коли вона запрограмована, або EEPROM?
Кібергібони

Я б поставив під сумнів фразу "Один із розділів" Ардуїно ", який, можливо, з часом стане ненадійним, - це його пам'ять". - спалах може робити 10 к циклів, цикл EEPROM 100 к. Це багато пише.
Кібергіббони

@Cybergibbons Програми, що мають велику пам’ять, можуть робити 100+ записів у хвилину. Не часто, але можливо при використанні великої кількості датчиків. Тест дасть нам відсоток пам'яті, яка працює правильно. Я не маю конкретних знань про мікросхеми ПЗУ на Arduino, але багато ПЗУ мають можливість розповсюдження циклів читання та запису по мікросхемі. Ефект цього полягає в тому, що коли навіть деякі місця пам’яті деградують, це знак того, що весь чіп незабаром деградує. Навіть якщо цикли П / Ш не поширюються, навіть тоді, якщо певні ділянки починають виходити з ладу, то це знак, що ..
asheeshr

принаймні частини мікросхеми зазнали значного зносу, що робить мікросхема частково ненадійною. У будь-якому випадку оцінка всього наявного обсягу пам'яті є досить надійним методом з'ясування поточного стану мікросхеми, який може вказувати на збій у найближчому майбутньому . Так, це не скаже мені, якщо чіп вийде з ладу в наступному проекті, але у випадку небезпечного або дорогого додатку я, звичайно, не став би чіп для роботи, що має підвищену ймовірність виходу з ладу.
asheeshr

Якщо ви пишете в EEPROM або спалахуєте сотні разів на хвилину, ви дивитесь на життя менше доби. Це просто нераціональне використання. В ATmega вирівнювання зносу немає.
Кібергіббони

-4

Редагувати: Люди, які голосували за мою відповідь, О, загальні, не надто дурні! для цього вам потрібно бути електроном і пройти через саму ланцюг, щоб перевірити, чи все гаразд чи ні :)

Підключіть плату до USB-порту комп'ютера та перевірте, чи світить зелений індикатор живлення на дошці. Стандартні плати Arduino (Uno, Duemilanove і Mega) мають зелений світлодіодний індикатор живлення, розташований біля перемикача скидання.

Помаранчевий світлодіод поруч із центром плати (з написом "Світлодіодний контакт 13" на зображенні нижче) повинен блимати та вимикатися, коли плата вмикається (дошки поставляються із заводу, заздалегідь встановленого програмним забезпеченням, щоб миготіти світлодіодом як проста перевірка того, що правління працює).

введіть тут опис зображення

Якщо світлодіод живлення не засвітиться, коли плата підключена до комп'ютера, плата, ймовірно, не отримує живлення.

Блимаючий світлодіод (підключений до цифрового висновку 13) керується кодом, що працює на платі (нові дошки попередньо завантажуються ескізом прикладу Blink). Якщо блимає світлодіод контакту 13, ескіз працює правильно, а це означає, що мікросхема на платі працює. Якщо зелений світлодіодний індикатор вмикається, але світлодіодний контакт 13 не блимає, можливо, заводський код не знаходиться на мікросхемі. Якщо ви не використовуєте стандартну плату, вона може не мати вбудованого світлодіодного індикатора на штир 13, тому перегляньте документацію щодо деталей вашої плати.

Інтернет-посібники для початку роботи з Arduino доступні в для Windows , для Mac OS X та для Linux .


2
Питання полягає в тому, як перевірити, чи дошка наближається до відмови , а не якщо її вже вийшла з ладу .
asheeshr

@AsheeshR: Ой звичайний не надто дурний! для цього вам потрібно бути електроном і пройти через схему, щоб перевірити, чи все гаразд чи ні :)
Hardik Thaker

2
@HardikThaker Чому ви не замість цього ставите відповідь? Було б краще, гадаю. Крім того, якщо ви не хочете кидати свою відповідь (це корисно), ви завжди можете задати правильне питання і відповісти на нього самостійно. Це зазвичай роблять експерти для вирішення часто заданих питань, як-от так .
Рікардо

@Ricardo: Роджер, що! Дякую друже ! Я маю це на увазі: P більше удачі наступного разу для мене;) -4 та підрахунку: P
Hardik Thaker
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.