Якщо хто-небудь використовував linux-драйвер шини 1-Wire на основі GPIO, то напевно помічав, що в момент виконання обміну даними завантаження SY% підскакує мало не до ста 100% (що цілком логічно для bitbang-реалізації). Звичайно, можна поставити спеціалізований контролер шини 1-Wire з підключенням через I2C DS28E17 або UART, але… Все-таки використовувати linux для додатків реального часу не найкраща ідея. Нехай контролер на ньому займається високорівневої логікою, а весь реалтайм можна винести на окремий процесор. Тим більше, що завдань для цього окремого процесора в моєму проекті більш ніж достатньо.

Читати далі →

<img src=«habrastorage.org/files/25b/328/633/25b3286332ac4159af146f28bbcad257.png» alt=«image» alt text"/>
Тиждень плавно підходить до вихідних, тому саме час придумати собі заняття на довгі свята. Наприклад, можна зібрати з Raspberry Pi тепловізор для відповіді на вічні питання "скільки гріти двигун" і «яка температура голови у програміста». Або власний варіант Google Glass на базі Arduino, нехай і вузькоспеціалізований.
Читати далі →

Керування світильниками по протоколу DALI з допомогою Arduino

протоколі DALI
DALI (Digital Addressable Lighting Interface) – протокол, призначений для керування освітлювальними приладами. Протокол був розроблений австрійською компанією Tridonic і заснований на манчестерському кодуванні: кожен біт даних кодується перепадом від сигналу низького до високого або навпаки.

Читати далі →

Arduino на автомийці ч. 2

Продовжуємо розгляд застосування Arduino для автомийки самообслуговування. Розглянемо роботу по мережі і спілкування з купюропріємником Cashcode.
Початок див. тут

Читати далі →

Інтелектуальна система ЕЛІС

image

Мене звати Олег Андрєєв, мені 32 роки, займаюся ремонтом і розробкою електроніки, а також програмуванням (що вже більше 10 років). Завжди захоплювався штучним інтелектом і робототехнікою.

Дуже давно мені в голові крутилася ідея, створити ІІ або щось подібне, що буде здатна керувати чимось. Але не було можливості зробити таке, хоч і були якісь ідеї. Зараз же час технологій, тепер будь-яка дитина може зібрати робота або якийсь складний пристрій на платформі Ардуїнов і т. д.

Читати далі →

Arduino на автомийці

Напевно багато хто вже бачили автомийки самообслуговування. Чи можна створити такий апарат на Arduino?


… наступна хвиля економічних лих… буде результатом швидкої ходи автоматизації, яка скасовує багато хороші робочі місця рівня середнього класу (Б. Обама

Читати далі →

Погодна станція з Arduino і Orienteer

Під Новий Рік до мене приходить бажання розробити щось нестандартне. В цей раз я вирішив почати збирати і обробляти погодні дані біля свого будинку. І, звичайно, вибрав Arduino в якості заліза, а от в якості сховища та інструменту перегляду та аналізу — згадуваний нещодавно на Хабрахабре конструктор бізнес-додатків Orienteer. Тим що вийшло, я поділюся в цій замітці.



Читати далі →

Тренування кислотного акумулятора абияк і своїми руками

Печаль. Здох акумулятор, незаслужено забутий взимку в гаражі. Я його витягнув з мотоцикла, то сигналізація зжерла всі, то чи не зарядився у минулі покатушки. Напряжометр показував 9В, що є кримінал.

Я приніс батарею додому, відігрів, підключив до заряднику. Зарядник через півгодини показав ОК. Брехав. Нічого там не ок. Лампочка ближнього світла горіла приблизно 10 хвилин і потім швидко перейшла в стан «слабо грію повітря». Акумулятор 6Ач, лампочка 55Вт.

Не купувати ж новий акумулятор? Зима, час є. Є ардуина навіть і коробка всяких чіпсів з Китаю. Дарма порошаться там чи що?

image

У далекій радянської армії 30 років тому я проходив курс догляду за акумуляторами. Основна відмінність його від інструкцій 21 століття було таким: батарея повинна проходити серію циклів заряду і розряду. Без цього, скільки її в заряднике не тримай, який би він не був розумний, вона здохне.

Читати далі →

FRAM через I2C для Arduino

Продовжу розповідати про приладову панель для мотоцикла. Це чудовий пристрій містить одометр, тобто, лічильник пройденого шляху в кілометрах, а в того є погане властивість — він повинен зберігати дані при вимкненому живленні. Ой, ще є мотогодини, їх теж треба зберігати як-то энергозависимо.

Всередині Ардуины є EEPROM, звичайно ж. Багато місця не треба, щоб зберігати п'ят довгих цілих, але є нюанс. EEPROM має дуже обмежений ресурс на запис. Хотілося б писати дані раз на кілька секунд хоча б. Ресурс ж EEPROM дозволяє це робити цілком видимий час, тобто, вбудована пам'ять явно не вічна.

Спочатку я хотів обдурити долю записуючи структурку даних в різні місця 1К пам'яті чіпа по колу. Вперся в те, що покажчик треба десь зберігати теж, а дані досить випадкові, щоб використовувати якийсь маркер для послідовного пошуку.

Колеги з НТЦ Метротек підказали пошукати FRAM. Це ферритова пам'ять з шаленим швидкодією і 1014 циклами запису.

Читати далі →

Обробка натискань кнопок для Arduino. Схрестити ООП і МКА. Частина 1

Пару місяців тому я купив не сильно новий мотоцикл KTM 250EXC, відкрутив ручку газу в гірку, моту стрільнув в небо, а сам сів на дупу і щось там зламав в спині. В результаті, на мотоцикл не сісти два місяці як мінімум. До чого я це? Так. У трохи втомленого мопеда виявилася несправна приладова панель і я зібрався, поки лежу вдома, зробити саморобну нову.

image

Швидко зібрав макет, циферки бігають, годинник ходять, одометри запам'ятовуються в FRAM — краса, але… знадобилися кнопочки для управління цією красою.

Сьогодні розповім про кнопочки, потім про датчик запалювання, а вже потім про саму панель приладів, Гаразд?

Малювати на китайському екрані 16х2 через i2c просто, датчики швидкості і оборотів мотора сіли на зовнішні переривання, температура читається з аналогового порту, інфа зберігається в FRAM, ну і годинник теж китайські встромлені. Все це крутиться асинхронно приблизно як SmartDelay, про який писав нещодавно тут.

Читати далі →