GithubHelp home page GithubHelp logo

i2cstepper's Introduction

I2CStepper

Скетч для Arduino Nano, управляющий шаговым двигателем и четырьмя реле. Основное назначение - использование совместно с Самоваром как модуль расширения. Управляет четырьмя реле. Первое используется для управления насосом в режиме вкл/выкл, например, для перемешивания затора в режиме Пиво. Три других могут использоваться для управления дополнительной переферией.

Так же управляет шаговым двигателем в двух режимах:

  • Управление мешалкой на шаговом двигателе для режима Пиво.
  • Управление перестальтическиим насосом на шаговом двигателе.

Обратите внимание: Для мешалки время работы задается в секундах а скорость - в оборотах в секунду. При ручном изменении скорости вращения мешалки перерасчитывается время, оставшееся до конца работы. Это нужно учитывать. При изменении скорости через Самовар время работы не меняется. Для перестальтического насоса скорость задается в миллилитрах в час, а время работы - в миллилитрах, которые насос должен прокачать. Выбор режима работы осуществляется в меню Setup - устанавливается или Mixer или Pump. При этом меняется адрес I2C для корректной работы с Самоваром. Для корректной работы необходимо перезагрузить I2CStepper после изменения режима.

Управление возможно как отдельно с помощью меню на LCD экране 16х2 и энкодера, так и при подключении по I2C к Самовару.

В дальнейшем возможно расширение другими устройствами.

Необходимо использовать библиотеки, идущие в комплекте с Самоваром.

Покдлючение переферии:

// Пины для I2C Master - подключение экрана и потенциально других устройств
// SDA_PIN 0 //A0
// SCL_PIN 2 //D2

// Пины для I2C Slave - связь с Samovar
// SDA_PIN A4
// SCL_PIN A5

// Пины для шагового двигателя
#define STEPPER_STEP 3
#define STEPPER_DIR 4
#define STEPPER_EN 5

//Пины для реле
#define MIXER_PUMP_PIN 13 // RELE_PIN1
#define RELE_PIN2 10      // RELE_PIN2
#define RELE_PIN3 11      // RELE_PIN3
#define RELE_PIN4 12      // RELE_PIN4

// Пины для Encoder
#define ENC_CLK 7 //S2
#define ENC_DT 8  //S1
#define ENC_SW 9  //KEY

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.