Авторизация
Зарегистрироваться

Расширитель на 16 цифровых пинов (ввод-вывод) с интерфейсом i2c - MCP23017. С практическим применением для системы полива.

  1. Цена: $9.50 за 10 штук
  2. Перейти в магазин

Я уже делал немало обзоров посвященных дачной автоматике. Этот обзор из той же серии, зимой самое время вспомнить дачные доработки и реализовать задуманное. Микросхема из обзора позволяет получить 16 двунаправленных выводов с доступом по шине i2c. Причем полученные пины программно можно подтягивать, а значит не нужны внешние резисторы. Под катом кратко про микросхему и готовое устройство построенное с ее применением. Все кто любит мастерить огородные (и не только) штуки приглашаются. Колхозинг, пайка и программирование ожидают Вас.

Перед тем как начать писать, вспомнил специфического местного автора и хотел написать: «ШОК!!! управление поливом по разным интерфейсам, в том числе с телефона… ». Я каждый раз пытался понять почему шок, да еще большими буквами и с восклицательными знаками, по моему, шок вызывают несколько иные вещи. Ну да ладно, начнем про наше устройство.

10 микросхем доехали довольно быстро, порядка 2-х недель. Упакованы были в жесткую тару для микросхем, поэтому повреждены не были.Сама микросхема:

Содержит управляющие входы шины I2C: SDA и SCL. VDD — вход питания, VSS — вход земли. A0-A2 — позволяют задать адрес микросхемы на шине I2C (если у вас планируется использовать несколько таких микросхем, либо иных устройств с пересекающимися адресами). Собственно, вновь получаемые пины представлены двумя портами по 8-выводов: GPA0-7 и GPB0-7, каждый пин может быть самостоятельно настроен на чтение или запись. Микросхема способна генерировать прерывание при изменении сигнала на одном из выводов порта, выходы прерываний: INTA и INTB. Вывод RESET позволяет сбросить микросхему в исходное состояние подачей низкого уровня, поэтому нужно его подтянуть к питанию. Со стороны контроллера выводы SDA и SCL следует подтянуть к питанию резисторами 4.7 кОм один раз, не нужно подтяжек каждому устройству подключаемому к шине I2C. Типовой вариант подключения выглядит следующим образом:

Подробная документация по микросхеме.

Для тестов я сделал некую отладочную плату, которую можно использовать в реальных устройствах:


Собственно, плата содержит все выводы данной микросхемы. На каждый пин имеется два винтовых клеммника, собственно сам пин и второй, который можно подключить для каждого порта (А и В) либо к земле, либо к питанию перемычкой. Также, имеются адресные входы микросхемы, с помощью перемычек можно перебрать все возможные комбинации. На отдельных пинах выведены выходы прерываний (А и В). Имеется встроенный DC-DC преобразователь на 5 В. Несколько пинов питания и земли. Также индикация светодиодом подачи питания. Ну и, конечно, I2C шина для подключения к контроллеру.

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


Подключим Arduino Nano к тестовой плате:

Вторые выводы шины В я подключил к земле, к выводу GPB1 подключил кнопку изготовленную в этом обзоре. Вторые выводы шины А я подключил к питанию, так как для тестов использовал 3-х цветный светодиод с общим анодом, анод светодиода подключил к питанию, красный к выводу GPA7, зеленый к GPA6, синий к GPA5. Выход прерывания шины В подключил ко входу 3 Arduino Nano. Питаться наша конструкция будет от платы Arduino. Для работы с микросхемой есть замечательная библиотека от Adafruit.
Код для проверки работы светодиода вместе с кнопкой:

#include <Wire.h>
#include "Adafruit_MCP23017.h"

Adafruit_MCP23017 mcp;
  
void setup() {  
  mcp.begin();      // use default address 0
  mcp.pinMode(9, INPUT);
  mcp.pullUp(9, HIGH);  // turn on a 100K pullup internally
  mcp.pinMode(7, OUTPUT);
  mcp.digitalWrite(7, HIGH);
}

void loop() {
  mcp.digitalWrite(7, mcp.digitalRead(9));
}



Если кнопка замыкает вывод GPB1 на землю, то красный светодиод светит. Видео теста:

Проведем немного более сложный тест для работы с прерываниями.
Код

#include <Wire.h>
#include <Adafruit_MCP23017.h>

Adafruit_MCP23017 mcp;

byte ledPin=7;
byte arduinoIntPin=3;
byte arduinoInterrupt=1;
volatile boolean awakenByInterrupt = false;
byte mcpPinB=9;

void setup(){
  pinMode(arduinoIntPin,INPUT);
  mcp.begin();      // use default address 0
  mcp.setupInterrupts(false,false,LOW);
  // similar, but on port B.
  mcp.pinMode(mcpPinB, INPUT);
  mcp.pullUp(mcpPinB, HIGH);  // turn on a 100K pullup internall
  mcp.setupInterruptPin(mcpPinB,FALLING);
  // We will setup a pin for flashing from the int routine
  mcp.pinMode(ledPin, OUTPUT);  // use the p13 LED as debugging
  mcp.digitalWrite(ledPin,HIGH);
}

void intCallBack(){
  awakenByInterrupt=true;
}

void handleInterrupt(){
  uint8_t pin=mcp.getLastInterruptPin();
  uint8_t val=mcp.getLastInterruptPinValue();

  uint8_t flashes=4; 
  if(val!=LOW) flashes=3;

  for(int i=0;i<flashes;i++){  
    delay(100);
    mcp.digitalWrite(ledPin,LOW);
    delay(100);
    mcp.digitalWrite(ledPin,HIGH);
  }
  cleanInterrupts();
}

void cleanInterrupts(){
  EIFR=0x01;
  awakenByInterrupt=false;
}  

void loop(){
  attachInterrupt(arduinoInterrupt,intCallBack,FALLING);
  while(!awakenByInterrupt);
  detachInterrupt(arduinoInterrupt); 
  if(awakenByInterrupt) handleInterrupt();
}


При нажатии кнопки генерируется прерывание, в обработчике переключается переменная, после установки которой выполняется функция с миганием нашим тестовым светодиодом. Иллюстрация работы:


В целом, микросхема сделана очень удачно и ее удобно использовать в своих проектах. В отличие от pcf8574 она дает полноценные выводы, с током до 20 мА. Следует сказать, что на одну шину I2C можно прицепить несколько таких микросхем, задавая каждой свой адрес, таким образом, получим просто огромное количество цифровых входов и выходов (конечно если устраивает не высокая скорость шины I2C).

Применил я эту микросхему в своем новом устройстве дачного полива. Прошлое устройство описано здесь. Там я использовал сдвиговые регистры 74HC595. С данной микросхемой устройство реализовать будет проще. Кстати, следует заметить, что один из первых моих обзоров был про китайские управляемые шаровые краны, которые успешно поливают огород уже 3 сезона. На даче подобных кранов используется 11 штук, проблема этим летом была выявлена только с одним — внутрь попала вода, поэтому следует промазать шов стыка пластиковых крышек герметиком, что я и проделал.

В этот раз плату я заказал в Китае, воспользовался акцией 2$ с бесплатной доставкой от jlcpcb.com за 3 недели платки доехали. В целом сервис меня устроил. Преимущества: цена, высокое качество. Недостатки: нельзя делать панелизацию (одну из моих плат с линиями разлома развернули (предложив доплатить 64$), невозможность выбора цвета, и средство автоматического определения размеров у них почему-то прибавляет относительно моих измерений и измерений других сервисов пару мм (а выход за пределы 10 на 10 см — влечет существенное увеличение цены). Вообще любое изменение параметров устремляет цену вверх, поэтому там стоит заказывать большие цельные платы, используя только стандартные настройки.
Плата выглядит хорошо:


Шелкография, контактные площадки — все очень точно совпадает с макетом. Для сравнения плата изготовленная dirtypcbs.com:


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

Начнем сборку, припаиваем контроллер ATmega1284P (можно использовать и ATmega 644 — по выводам они совпадают), я решил протестировать первое устройство, поэтому взял подходящий контроллер с максимальным функционалом. Также припаиваем смд детали и разъем для программирования (ICSP), получилась минимальная конструкция, пригодная для теста:

Прошиваем простую программку, которая все выводы микросхемы MCP23017 сделает выходами и поочередно выставит на них единичный уровень:

Припаиваем остальные детали. под микросхемы L293D я установил разъемы:


После смывки флюса, припаивания DC-DC преобразователя и вставки микросхем L293D:


Подключим питание и видим работу нашей прошлой прошивки:

Тест остальных пинов (ввиду их большого количества) удобно проводить маленькой платкой со светодиодами и ограничительными резисторами:

Тут на муське немало примеров своих аудио систем, наша плата полива сможет с некоторыми из них поконкурировать по качеству звука :), тест пищалки:

Конечно, это была шутка про качество, но пищалка работает и сможет извещать о переключении режимов.

Систематизируем наши пины управления двигателями.
Код

#include <Wire.h>
#include "Adafruit_MCP23017.h"

Adafruit_MCP23017 mcp;
#define addr 0  

// time for complite change state motor
#define TIME_POWER_MOTOR 500

// for count motors
template<typename T, size_t n> inline size_t arraySize(const T (&arr)[n]){return n;}

// in setup set count of motors
byte NumberOfMotors = 0;

// drive mode
enum { STOP, OPEN, CLOSE};

// type motor
typedef struct {
  uint8_t PinOn; // pin for open motor
  uint8_t PinOff; // pin for close motor
  unsigned long StartTime; // start time current operation
  byte DefaultState; // default state motor
  byte CurrentState; // current state motor
} MotorType; 

// all motors, format:
// pin for open, pin for close, 0 - last start power, default state, current state (STOP - 
// unknown state, if need default set STOP)
MotorType MC[] = {
  {15, 14, 0, CLOSE, STOP},
  {13, 12, 0, CLOSE, STOP},
  {11, 10, 0, CLOSE, STOP},
  { 9,  8, 0, CLOSE, STOP},
  { 0,  1, 0, CLOSE, STOP},
  { 2,  3, 0, CLOSE, STOP},
  { 4,  5, 0, CLOSE, STOP},
  { 6,  7, 0, CLOSE, STOP},
};

void setup() {
  mcp.begin(); // use default address 0

  NumberOfMotors = arraySize(MC);
  for (uint8_t i = 0; i < NumberOfMotors; i++) {
    mcp.pinMode(MC[i].PinOn, OUTPUT);
    mcp.digitalWrite(MC[i].PinOn, LOW);
    mcp.pinMode(MC[i].PinOff, OUTPUT);
    mcp.digitalWrite(MC[i].PinOff, LOW);
  }
}

void loop() {
  for (uint8_t i = 0; i < NumberOfMotors; i++) {
    mcp.digitalWrite(MC[i].PinOn, HIGH);
    delay(TIME_POWER_MOTOR);
    mcp.digitalWrite(MC[i].PinOn, LOW);
    mcp.digitalWrite(MC[i].PinOff, HIGH);
    delay(TIME_POWER_MOTOR);
    mcp.digitalWrite(MC[i].PinOff, LOW);
    //break;
  }
}


Тест:

Проверим на шаровом кране, задав подходящее время таймаута и ограничив цикл только первым драйвером:

Коммуникационные возможности нашей платы весьма высоки, из коробки поддерживаются следующие модули:

1 — Адаптер Ethernet na чипе enc28j60
2 — Адаптер Ethernet на чипе w5100
3 — Радиомодуль nrf24l01 (как с антенной на плате, таки с внешней)
4 — Радиомодули приемника и передатчика 433 MHz, обзор разных модулей со сравнением я делал здесь, любые из того обзора можно применить.
5 — GSM-модем на SIM800L
Помимо этого, выведен UART Serial, который позволяет прицепить целый ряд устройств (esp8266, bluetooth, специализированные радиомодули и тп). Для использования любых возможностей коммуникаций, достаточно реализовать поддержку требуемых модулей в прошивке.
Примеры подключения






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

Для подключения внешних датчиков и иных устройств, также немало возможностей 11 пинов на штырьках, с возможностью подтяжки 5 из них к питанию резистором. Два вывода на клеммниках. Кроме этого, имеется вход подключенный через операционный усилитель lm358.
Таким образом, легко подключить датчики: влажности почвы (хороший я описывал тут), дождя, освещенности, скорости ветра и тп. Платка позволит организовать контроль наличия воды и работы насоса. Для измерения температуры (воды, воздуха и тп) на синем тройном клеммнике предусмотрено подключение шины 1-wire с датчиками ds18b20.

Спасибо тем кто дочитал до конца! Надеюсь, что обзор будет полезен, напомню основной целью было рассказать о микросхеме MCP23017, показать как ее подключать к Arduino и как писать код по управлению полученным множеством пинов, кроме того, я показал, что в реальных устройствах, она тоже прекрасно может работать. Всех поздравляю с Рождеством!

Хищник после драки проходит реабилитацию, поэтому к устройству равнодушен


Планирую купить +58 Добавить в избранное +96 +178
свернуть развернуть
Комментарии (57)
RSS
+
avatar
+4
Феерично!
+
avatar
  • nemoi13
  • 07 января 2018, 20:28
+24
Ничего не понял, но на всякий случай поставил плюс.
+
avatar
+2
тест пищалки ностальгичен))

… оказывается на ютубе куча трекерной и восьмибитной музыки есть)

а, кстати, почему не PCF8574T?
они стоят меньше двух долларов в готовом модуле и доллара 3-4 за десяток россыпью

увидел почему)
+
avatar
  • kiv69
  • 16 января 2018, 20:01
0
PCF8574 стоят гораздо-гораздо дешевле. Можно использовать сигнал нуля на выходе, там с током всё в порядке.
+
avatar
  • yurok
  • 16 января 2018, 23:19
0
можно конечно, но во первых она со своими особенностями — как я и писал, а во вторых она на 8 выводов — каждый решает каждый сам
237,70 руб. — за 10 штук стоит PCF8574 (на 8 пинов)
552,10 руб. — за 10 штук данная MCP23017 (на 16 пинов)

сомнительная экономия, учитывая возможность использования сигналы разной полярности в сабже
+
avatar
  • denM
  • 07 января 2018, 20:39
0
Ежик — фирменный логотип?
А почему не делали сами типа ЛУТ-ом?
+
avatar
  • yurok
  • 07 января 2018, 20:42
0
типа того
ЛУТОМ нексколько плат делать утомительно при такой цене и учитывая сроки установки в систему полива — лучше заказать, А ЛУТОМ-я сделал много плат — часть из них есть в моих прошлых обзорах — можете посмотреть
+
avatar
  • ksiman
  • 07 января 2018, 20:42
+5
Кто совсем не понял о чём речь — устройство позволяет принимать и передавать дискретные управляющие сигналы по шине I2C
+
avatar
  • yurok
  • 07 января 2018, 20:53
0
Расширитель на 16 цифровых портов с интерфейсом i2c — помоему более понятно — в названии написано — а про принимать и передавать в обзоре написано )
+
avatar
  • ksiman
  • 07 января 2018, 21:00
+5
Расширитель на 16 цифровых портов с интерфейсом i2c — помоему более понятно
Неоднозначное определение, например я пока не прочитал обзор — не понял.
про принимать и передавать в обзоре написано )
Так это для тех, кто обзор не читает, но комментирует :)
+
avatar
  • krysa
  • 07 января 2018, 22:03
0
два 8-битных порта, если уж совсем точно
+
avatar
  • Dimon_
  • 07 января 2018, 20:59
+3
С точки зрения качества обзора — всё безупречно. Информативно и интересно. Так что, оценивая обзор, ставлю плюс с удовольствием.

С точки зрения терминологии, «16 портов» — не очень честная формулировка, было бы честнее «16 пинов» или «16 линий ввода-вывода».
Поскольку в заголовке обзора написано, что это «расширитель на 16 портов с интерфейсом i2c», можно подумать, что мы получим 16 портов i2c, (т.е. эдакий шестнадцатипортовый i2c-хаб) что не так. Очень бы хотелось попросить Юрия переформулировать.

С точки зрения практического применения, как-то для себя интереса из предмета обзора не вынес. Но это моя личная точка зрения. Другим, возможно, это и пригодится. Лично мне в ардуине-мега за 6$ пока вполне хватает её родных и легкоадресуемых 70 двунаправленных линий, из которых 14 ещё и с PWM (это если не трогать ресет). Бóльшее количество неадресуемой («глупой») периферии я как-то не адресовал пока…
+
avatar
  • yurok
  • 07 января 2018, 21:05
0
Спасибо, поправлю
подобную платку расширения, которая приведена в обзоре можно прицепить к уже готовому устройству, например, на ардуино про мини и получить много портов. В большинстве случаев, не хватает именно портов — а ставить мегу не всегда хочется (иногда и не возможно — если про мини стоит в плате), да и недешево это.
+
avatar
  • Aostspb
  • 09 января 2018, 17:28
+1
С точки зрения практического применения, как-то для себя интереса из предмета обзора не вынес.
Интерес может быть только в случае выноса этого «расширителя» шины i2c на какое-то (какое, кстати?) расстояние от контроллера.
+
avatar
  • Dimon_
  • 09 января 2018, 23:25
0
(какое, кстати?)
Вот тут есть экзамплы на 3м, 25м, 100м и 250 метров. Но что-то я, если честно, не очень верю. Этот транспорт не предназначен для длинных дистанций, его ниша — именно внутри одного корпуса. Там всё в ёмкость линии упирается. На практике, подозреваю, дальше пары метров что-то вразумительное получить вряд ли удастся…
+
avatar
0
Хороший обзор. Утащил пару идей себе. Спасибо.
+
avatar
  • mike888
  • 07 января 2018, 21:16
0
О чем речь то понятно, непонятен смысл. Городить на ардуине что-то более менее серьёзное, глупо. Прилепить гсм модем конечно можно, но без контроля активности и сброса его в случае зависания, он бесполезен, уже прошёл эти грабли. Да и заставить его работать не так просто как кажется, что за косяки у опсосов не знаю, но далеко не со всякой симкой работает.
Опрос датчиков по моему проще на мультиплексоре сделать, датчики под ардуину типа DHT точностью не отличаются, влажность более менее правдоподобно показывают в середине диапазона, если только BME280 брать может получше будет.
Делать что-то более менее серьёзное хотя бы на малине или даже проще взять старенький нетбук за копейки. Ардуина годится как обработка сигнала датчиков, да и то если пару десятков вешать, то тупит страшно, она же однозадачная.
+
avatar
  • Xizel
  • 07 января 2018, 21:21
+1
Если что-то и городить, Лучше взять готовый проект и его повторить. Пусть даже платный. Просто время — дороже денег. Кто не работает и есть время- можно и самому на коленке.
У кого -то работа огород городить, разработка. А кто-то и на эксплуатации тянет лямку.
+
avatar
  • mike888
  • 08 января 2018, 02:20
0
Смысл конструкции не очень понятен, можно весь огород проводами опутать, но расти лучше от этого не будет. Я не говорю про то что экономически и так огород золотым выходит.
Могу понять как хобби лепить что-то, поскольку интересно. Сам когда-то развлекался подобным образом. Потом пришёл к тому, что чем проще, тем надёжнее, тем более что надо реально совсем немного, иначе становишься рабом того что нагородил и не вещь для тебя, а ты для вещи
+
avatar
  • yurok
  • 08 января 2018, 02:31
+1
3 года назад собрал — и поливает согласно алгоритму — вмешательств не требовалось — в обзоре описал единственную проблему (попадание воды в механизм крана) — сколько сэкономлено времени на полив — трудно и посчитать + отсутствие необходимости участия в этом процессе — тут решает каждый сам. Сейчас решил добавить функционала и иметь некий резерв + обращаются знакомые.
+
avatar
  • mike888
  • 08 января 2018, 02:58
-3
Дык в этом году в ленобласти полив не нужен был. И как-то не напрягает открыть кран. А варианты удалёнки не актуальны, только контроль параметров, никакого управления. Во первых отрубание электричества рубит связь, что толку что у меня всё работает когда сотовая вышка вырубилась. Ну и второй момент, что всё крутится на сервере, который всегда взломать могут. Фиг с ним что данных с датчиков не увижу, но если управление будет, то включение отопления и насосов это уже проблема серьёзнее.
Ну рабам гаджетов меня не понять, но у меня то нет зависимости от гаджетов, и отключение электричества для меня не означает конец света))
+
avatar
  • hostage
  • 08 января 2018, 12:16
+1
В Ленобласти полив тоже нужен был. В теплице, например. Стабильность arduino — watchdog из ne555 и пятка деталей, платка лут в моём варианте примерно 2x3 см. GSM модем с ардуинкой уже год стоит, удалённо управляет даже парой компьютерных железок в продакшене — нет проблем. Отфильтруйте питание и будет вам счастье. И да, проблем с мтс и модемами sim800 не встречал. За других операторов отвечать не могу.
Электричество отключается ну наверно пару раз в год и ненадолго. В том уже году один раз, емнип. При том что GSM (sms) это резервный источник связи, а основной — протянутая в садоводство оптика, то полного отсутствия связи не было вообще ни разу.

Ну и главное — ехать включить кран для полива (скажем 2 раза в неделю) это 70 км в один конец (мне). Топливо кто посчитает? 42 рубля дизель, напомню :-)
+
avatar
  • mike888
  • 08 января 2018, 12:51
0
Метеостанция на даче работает, как резерв стоит автоаккум 95ач, но у опсоса нет резервного питания, кому оно в этой глуши нужно. Так что как только свет рубануло, так всё пропало. Оптику в деревни никто не тащит, как вариант инета только спутник, но это если там жить. Опсос один мегавонь, и то через пень колоду. так что без вариантов. Зато в деревне не платишь неизвестно за что, не содержишь кучу паразитов.
В парнике всё прекрасно работает на локальных устройствах, примитивные датчики влажности рулят клапаном, никаких процов просто триггер. Ну и цилиндры на форточках. Дальше свет и подогрев всё на примитивных локальных устройствах. Никаких зависаний и проблем со связью, наигрался ещё в прошлом веке в компы и объёдинение всего.
Проблема зависания модема в софте опсоса, но бодаться с ними бесполезно, найти адекватного человека который понимает о чем я, в саппорте опсоса мне не удалось, там только курицы с загруженой программой отфутболивания, они вобще не понимают ничего в АТ командах.
Ну а насчёт выращивания на даче это всего лишь для собственого удовольствия, экономически никак не оправдано.
+
avatar
  • hostage
  • 08 января 2018, 19:51
+1
Ну есть мнение что в таёжных деревушках, где электричество видели только на плакатах пропаганды ГОЭЛРО совсем нет дела до ардуинок, автоматизаций и прочего :-)

Дело в не в оправдании, а в отсутствии потерь и времени и денег. Точнее даже сформулирую — без автоматических управлений старики уже не сажают, ибо нет сил ездить поливать, а мне нафиг оно не сдалось два раза в неделю мотаться туда, куда ну совсем нет ни времени ни желания. А с ним удобно и комфортно приехать тогда, когда захочется, всегда есть возможность увидеть что происходит (датчики температуры, количества воды в накопительных баках итд итп), видемониторинг и прочая прочая. Ну и старикам в радость приехать когда силы и здоровье есть и скушать огурчик-помидорчик время от времени. Вообще оптика, затянутая в садоводство напрочь преображает подходы ко всему. Даже при наличии 4х стабильно работающих сотовых операторов (даже lte в принципе есть)
+
avatar
  • mike888
  • 09 января 2018, 20:24
0
Ну оптики у меня нет нигде рядом, никому тащить её туда нафиг не нужно, деревни в которых 15-20 домов и 2-3 бабки жителей постояных и куда только летом и то в сухую погоду на пузотёрке проехать можно. Ну то что есть, то есть. Садоводство неинтересно в принципе, места нет, та же куча людей что и в городе и куча каких-то ненужных платежей.
+
avatar
  • aaan73
  • 14 января 2018, 22:41
0
В России кроме как купи/продай и… при этом, ничего не оправдано. Вот только когда гости приходят, магазинное они как-то не особо едят, всё больше домашнее… Не, на продажу не выгодно — просто не заплатят столько, сколько оно реально стоит. Но сравнивать свои помидоры с напичканными дрянью типа «Эсфона» малость некорректно. С примитивными датчиками всё тоже не очень радужно — при сильном ветре лучше окна теплицы подождать открывать, при низкой температуре, лучше недоливать при поливе, но делать поливы чаще и т.п. Исполнительные конечные устройства — те да, должны быть тупыми. А модемы виснут чаще всего из-за проблем с питанием и его просадкой при включении передачи — сам на это нарывался. Особенно в деревне — там запас раз в 10 должен быть в БП. Сам участок брал специально в деревне, а не в СНТ — и платежей непонятных нет и до дороги метров 300. Вот только с дорогой в деревне проблемы — делать не хотят, а взять на обслуживание и деньги за неё из бюджета получать — запросто.
+
avatar
  • mike888
  • 15 января 2018, 12:15
0
Своё золотым выходит, но магазиный пластик не идёт ни в какое сравнение. Раньше на рынках можно было купить, а сейчас разница между рынком и магазином только в цене, продукт одинаковый.
С модемом проблем с питанием нет, питается от авто аккума через LM317, проблемы бывают с получением IP адреса и с ответом сервера, почему вываливается 302 ошибка, пока никто недокопался, но то что это связано с софтом опсоса, однозначно.
Ну а с дорогами всё просто, я давно понял что не доживу пока у нас дороги появятся и купил английский уазик, наш был, это жуть.
+
avatar
  • aaan73
  • 15 января 2018, 15:17
+1
Наш УАЗ это не машина — это средство передвижения по полям и лесам. И всё. На рынках сейчас на 90% товар с тех же баз что и в магазе. Слышал про одного чувака из Подмосковья — мешает свои помидоры с турецкими и как домашние продаёт. Иначе просто не выгодно. То же и с картофелем. В Луховицах так же помидоры и огурцы впаривают — в теплицах ещё зелёные, а базар забит спелыми. Но и тут уже начали и свои химией брызгать чтобы красными становились. Но и народ уже зажрался — в позапрошлом году с кабачками перестарался — с грядки килограммов 400 снял. Не покупают — 4х дневный 30 см кабачок слишком большой и кривой. Всех соседей и родственников кабачками завалил. LM317 на 900й модем однозначно мало, модем в пиках жрёт больше 2х ампер. Конденсаторы выходные спасают, но не всегда. Да ещё китайские подделки 317ой ток ниже процентов на 30 дают. Нужен питальник с запасом, на 3-4А реальных, с ВЧ фильтром на выходе. Сам до ума схему так и не добил, проще роутер оказалось с 4G воткнуть и дистанционно подключаться когда вышку недалеко построили.
+
avatar
  • mike888
  • 15 января 2018, 20:02
0
У меня SIM800L уже год живёт без проблем на питании от LM317. Роутер нет смысла ставить, поскольку только 3G и то через пень колоду. В деревне электричество вырубят и ничего вобще нет.
Уазик как средство передвижения так себе, в стоке мотор хилый, другой ставить, начинает остальное сыпаться, хотя и так сыплется. Раньше плюс был что запчасти, хоть и дерьмовые, но копеечные и за бутылку где угодно, а сейчас нет никакого смысла за это деньги платить. Да и времени жалко, неизвестно что больше ты ездишь или чинишь.
С овощами у нас полный ппц, в той же Турции заходишь в лавку и там пахнет овощами, как у нас раньше, сейчас нет никакого запаха, один пластик.
+
avatar
  • aaan73
  • 15 января 2018, 22:48
0
Я участок выбирал с подстанцией, через которую АЗС запитана — электрика не хуже чем в городе. В Турции продают местные. Причём по таким ценам, что туда соваться даже крупным фирмам бессмысленно. Но в Турции климат немного другой — воткнул и растёт, только поливать не забывай… А в России проще и дешевле выкинуть излишки, чем продать или переработать — горючка и электроэнергия дорогие, стоимость нехилая, запросы у народа просто неадекватные… В позапрошлом году соседка несколько тонн «лишних» яблок в яму выбросила. Причём только я у неё больше 10 мешков себе и по знакомым растащил. Мармелад и сок из них ещё остались. Яблоки «Победа» в полуторалитровую бутылку из под газировки не влазили… Другая кроликов теперь только поз заказ выращивает — после переработки сотни тушек на тушёнку зареклась планировать продажу кроличьего мяса. А себе много делать просто не нужно, хотя сока можно надавить и побольше — на халяву из нержавейки бак для отжима сока народ подогнал, ещё времён СССР. Осталось только пресс и автоклав доделать. Тот же яблочный и берёзовый сок неплохо идёт в жару и зимой — осталась пара банок сейчас, квас берёзовый, своё пиво (ну под это ещё погреб не выкопал)… А вообще народ в средней полосе России уже и киви выращивает и лимоны и апельсины с мандаринами, фейхоа. Арбузы сам выращиваю на севере МО, но пока мелковаты, 2,5-4,5 кг были. Маринованные как закусон — ВО! Кто-то арбуз ЗИМОЙ в квартире под лампами вырастил, но это уже перебор. Но вообще — было бы желание.
+
avatar
  • mike888
  • 16 января 2018, 16:14
0
У турков ценники на энергоносители такие, что у нас халява по сравнению. Но растёт всё само. Но у них ценится репутация и продав что-то некачественое можно загубить семейный многовековой бизнес, у нас репутация была уничтожена в 1917.
У меня деревня в ленобласти 17 домов и до ближайшей азс полсотни км, так что только автономные варианты электропитания, которые никак не могут повлиять на сотовую сеть))
Для яблок есть пара соковарок ещё совковых и одна китайская, возни меньше чем сок давить. Ну и шнековая соковыжималка. Центробежные никак не годятся на большие объемы. Яблоки ещё в подполе хранятся, поскольку всё перерабатывать зараз нереально, приблизительно половина уходит в лес, это тачек 10. В подполе пришлось подогрев организовать из ик стекляного нагревателя и термостата W1208. Ну и контроль температуры через инет, если что всегда можно приехать. Управление есть, но используется, поскольку слишком много уязвимостей и нестабильность связи.
Дома лимоны растут, но это чисто хобби, поскольку они золотые, одно освещение чего стоит.
+
avatar
  • yurok
  • 07 января 2018, 21:23
0
Естественно, все что в обзоре относится к исполнительному устройству (считывание датчиков, включение и выключение нагрузки и тп) — управление целесообразно на чем-то ином делать, а как исполнительное устройство справляется отлично. Либо как автономное устройство для решения конкретной задачи.

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

ds18b20 как датчик температуры работает отлично в пределах 0.5 градусов, а больше и не нужно в таких задачах.

Зато она реального времени — и если правильно развести во времени обработку — то все отлично.
+
avatar
  • Dimon_
  • 07 января 2018, 21:47
0
датчики под ардуину типа DHT точностью не отличаются, влажность более менее правдоподобно показывают в середине диапазона, если только BME280 брать может получше будет.
Для температуры DS18B20 довольно точны, если их правильно эксплуатировать и опрашивать. (Правильно — это по даташиту).
Для влажности всё китайское одинаково «плюс-минус погода на Марсе», если оно на химических резистивах. К тому же, только на несколько лет. А нормальные аспирационные датчики — это сотни долларов. Так что психрометрить на двух DS18B20 — единственный доступный метод, судя по всему.
+
avatar
  • mike888
  • 08 января 2018, 00:04
0
Насчёт DS18B20, точность там тоже аховая, воткнуть в макетку десяток впараллель и читать показания, всё будет понятно. Для психрометрии надо пару отобрать с одинаковыми показаниями. Но весь огород с со смачиванием датчика, по уму дистиллятом, удручает. Проще сделать волосяной гигрометр и читать показания преобразуя механику движения в сигнал любым удобным способом, дешевле фирменого датчика получиться, а точность мало чем будет отличаться. Надо только волосы нужной длины найти и обезжирить.
+
avatar
  • Dimon_
  • 08 января 2018, 00:29
0
DS18B20, точность там тоже аховая,
Я пробовал года три или четыре назад. Четыре штуки. Совпадение до второго бита после запятой. Так что всё там более чем прилично. Брал не вспомню где. Возможно, сейчас что-то изменилось в их качестве.

PS: Под волос тензодатчик очень трудно подобрать будет. Волос нельзя преднатягивать, насколько я знаю. И, да, лучше брать женские волосы, они чувствительнее.
+
avatar
  • mike888
  • 08 января 2018, 02:09
0
Волос висит свободно в гигрографе в горизонтальной плоскости, длина сантиметров 20 и вбок его натягивает механизм передающий на стрелку его положение усилие там совсем не символическое и натяг есть. Волос не один, там пучок. Фоток нет, он у меня на даче живёт, но думаю в инете найти что-то можно. померить усилие тоже не могу пока. Ход стрелки с пером сантиметров 10. можно приделать что угодно хоть резистор или катушку с вдвиганием сердечника, любой датчик линейного перемещения
Насчёт DS18B20 скорее всего как повезёт, оригинал может и точный, я брал дешёвое на али, клоны как уж получились, скорее всего китайцы отбраковку кристаллов скупают и хоть как-то работающие заливают в корпуса и продают, как это со многими кристаллами делают.
+
avatar
  • ploop
  • 08 января 2018, 02:08
0
Насчёт DS18B20, точность там тоже аховая, воткнуть в макетку десяток впараллель и читать показания, всё будет понятно
У них гарантированная точность полградуса, калибруются на заводе. Если настоящие конечно, что сейчас китайцы делают — не в курсе.
+
avatar
0
меня больше цена плашки с 6 диодами смущает
куда еще 2 пропали? и почему все синие
+
avatar
  • yurok
  • 08 января 2018, 01:07
0
я покупал давно — нашел похожую на али
диодов там столько же
https://aliexpress.com/item/item/DC-3V-5V-12V-Rapid-Prototyping-RED-LED-Breadboard-starter-kit-for-Arduino-UNO-Atmega-MEGA2560/32273206116.html
вот красная
ее легко изготовить самостоятельно, либо ЛУТ, либо (если изготовитель плат допускает панелирование — обычно остается кусочек, на который подобную штуку разместить
+
avatar
0
я видел с 5мм светодиодами, не стал брать по той цене
рисунок платы у меня лежит, надо как-то заморочиться и сделать фоторезистом
уже наклеил его, засвечивать лень и потом на циркулярке пилить, там где-то 10 плат вылодит

вот если бы китайцы дешево предлогали 1 плату с панелизацией, то я бы туда отдал как раз такой кусок здоровый
но за 5-15 баксов не видел
+
avatar
  • yurok
  • 08 января 2018, 12:56
0
dirtypcbs.com за 20$ изготовят 10 плат 5x5 см с панелизацией, за 26$ — 10 плат 10x10 см
так что если вместе с чем то другим — то норм
+
avatar
  • alvaar
  • 07 января 2018, 23:06
0
Всё хорошо в mcp23017, можно определять входы и выходы на любые контакты, только лучше остерегаться использовать GPA7 и GPB7 как вход (источник).
+
avatar
0
согласно спецификации SDA/SCL должны быть подтянуты к VDD
на плате автора резисторы подтяжки есть, а вот на схеме типового включения их нет
для отважных разработчиков, которые не любят читать английским по белому документацию и черпающих знания с PlusPda это будет некоторым открытием :)
+
avatar
  • yurok
  • 08 января 2018, 01:00
0
да — про резисторы не написал, добавлю — спасибо
но на схеме типового подключения их неправильно показывать — там разъем и таких устройств может быть много — подтягивать следует только один раз

дописал про это
+
avatar
  • kepler
  • 08 января 2018, 02:47
0
Английский у вас, конечно, адовый ))
+
avatar
0
Обзор и представленная конструкция понравились.
Маленькое замечание к конструкции, выводы 1 и 9 драйверов L293D (EN1,2 и EN3,4) подтянуть через резистор к +5В.
Если это на плате реализовано, но я не разглядел, то заранее извиняюсь.
+
avatar
  • yurok
  • 08 января 2018, 16:54
+1
приветствую, спасибо
эта версия микросхемы уже идет с подтяжкой этих выводов к питанию

помимо этого она имеет тепловую защиту и отключает выходы при температуре 70 градусов — я помучал ее основательно перед использованием
+
avatar
0
С одной стороны я согласен с Вами, но, дело не в присутствии встроенной подтяжки к питанию сигналов EN, а в организации входов драйвера.

С другой, везде в даташитах на типовой схеме включения L293 эту подтяжку рекомендуют делать.
Ну, и через пины GND предполагается дополнительный теплоотвод от драйверов, вряд-ли наличие панелек этому способствует.
В любом случае, дело вкуса.
Спасибо.
+
avatar
  • yurok
  • 08 января 2018, 18:32
0
Что не так с рисунком и для какой конкретно микросхемы смотрите?

по поводу тепла и панелей, во первых ток кранов лежит в пределах 30-50 мА, (в обзоре есть ссылка на другой обзор, где я все измерения проводил, во вторых потери в передаче тепла панельки будут незначительны, в большинстве пром устройств для данной микросхемы используются панельки, в силу простоты замены микросхемки (иногда это требуется)
+
avatar
0
Мною был приведен рисунок из даташита на L293, L293D от TI, в даташите ST таких подробностей нет.
Основной мыслью было — нет никаких особых версий L293 с подтяжкой этих выводов к питанию.
Про панельки я сразу написал, что дело вкуса.
Если мой тон Вам показался агрессивным, это не так.
+
avatar
  • yurok
  • 09 января 2018, 00:03
0
Все дело в том, что китайские версии этих платок соответствуют L293DNE, на которой есть подтяжка к 1 всех входных сигналов, если измерите напряжение на EN — убедитесь в этом, в этом случае подавать что либо на EN не требуется, если не нужно делать ШИМ, а мне он не нужен, опыт эксплуатации при таком подключении в огороде составил 3 сезона
+
avatar
  • cyrax85
  • 08 января 2018, 21:17
0
о, великолепно! Тоже пилил не спеша похожую плату для автоматизации и тоже на 23017, но Ваша гораздо продвинутее… А не планируете выложить герберы для самой платы полива? Она мне бы идеально подошла )
+
avatar
  • dobrMAN
  • 15 января 2018, 05:04
0
На радостях побежал заказывать прототип за 2$ и обломился. Доставка 9$ минимум :(
+
avatar
  • yurok
  • 15 января 2018, 05:17
0
угу — кончилась акция, но она долго шла — пару месяцев наверно
+
avatar
  • dobrMAN
  • 15 января 2018, 05:26
0
Это что, я же в эйфории от такой халявы даже на способ доставки не глянул, хорошо обратил внимание что пайпал 2000+р просит и это как-то не 2$ совсем :) Оказалось выбор по умолчанию на DHL стоит :)
+
avatar
  • yurok
  • 15 января 2018, 05:29
0
да, у них по умолчанию такая
+
avatar
0
Добрый день!
Не могли бы Вы выложить гербер к pic.mysku-st.ru/uploads/pictures/03/49/17/2018/01/06/9c9e8e.jpg
?
А может у Вас остались из партии 1 плата на продажу(пустая)

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.