Помогите исправить ардуино скетч

Тема в разделе "Моторы, сервоприводы, робототехника", создана пользователем 848667, 6 сен 2019.

  1. 848667

    848667 Нуб

    Помогите исправить ардуино скетч.. Создавал скетч из несколько готовых скетчов... Но обьеденить не совсем получилоcь....
    (Использую esp8266 d1 mini ...подключено по вайфаю к хабу управления.... Д1 сервопривод,
    пытаюсь добавить 2 кнопки:
    1 Д3 нажатия полное открытие удержание ручное управление на открытие
    тоже самое со второй кнопкой Д4 но уже на закрытие...)

    Код (C++):
    #include <SmartThingsESP8266WiFi.h>

    //******************************************************************************************
    // ST_Anything Library
    //******************************************************************************************
    #include <Constants.h> //Constants.h is designed to be modified by the end user to adjust behavior of the ST_Anything library
    #include <Device.h> //Generic Device Class, inherited by Sensor and Executor classes
    #include <Sensor.h> //Generic Sensor Class, typically provides data to ST Cloud (e.g. Temperature, Motion, etc...)
    #include <Executor.h> //Generic Executor Class, typically receives data from ST Cloud (e.g. Switch)
    #include <InterruptSensor.h> //Generic Interrupt "Sensor" Class, waits for change of state on digital input
    #include <PollingSensor.h> //Generic Polling "Sensor" Class, polls Arduino pins periodically
    #include <Everything.h> //Master Brain of ST_Anything library that ties everything together and performs ST Shield communications

    #include <PS_Illuminance.h> //Implements a Polling Sensor (PS) to measure light levels via a photo resistor


    #include <IS_Button.h> //Implements an Interrupt Sensor (IS) to monitor the status of a digital input pin for button presses
    #include <EX_Servo.h> //Implements Executor (EX)as an Switch Level capability via a PWM output to a servo motor

    //*************************************************************************************************
    //NodeMCU v1.0 ESP8266-12e Pin Definitions (makes it much easier as these match the board markings)
    //*************************************************************************************************
    //#define LED_BUILTIN 16
    //#define BUILTIN_LED 16
    //
    //#define D0 16 //no internal pullup resistor
    //#define D1 5
    //#define D2 4
    //#define D3 0 //must not be pulled low during power on/reset, toggles value during boot
    //#define D4 2 //must not be pulled low during power on/reset, toggles value during boot
    //#define D5 14
    //#define D6 12
    //#define D7 13
    //#define D8 15 //must not be pulled high during power on/reset

    //******************************************************************************************
    //Define which Arduino Pins will be used for each device
    //******************************************************************************************

    #define PIN_SERVO_1 D1 //SmartThings Capabilty "Switch Level"
    #define PIN_BUTTON_1 D3 //SmartThings Capabilty Button / Holdable Button (Normally Open!)
    #define PIN_BUTTON_2 D4 //SmartThings Capabilty Button / Holdable Button (Normally Open!)


    //******************************************************************************************
    //ESP8266 WiFi Information
    //******************************************************************************************
    String str_ssid = "Fios-666"; // <---You must edit this line!
    String str_password = "66666666"; // <---You must edit this line!
    IPAddress ip(192, 168, 1, 248); //Device IP Address // <---You must edit this line!
    IPAddress gateway(192, 168, 1, 1); //Router gateway // <---You must edit this line!
    IPAddress subnet(255, 255, 255, 0); //LAN subnet mask // <---You must edit this line!
    IPAddress dnsserver(192, 168, 1, 1); //DNS server // <---You must edit this line!
    const unsigned int serverPort = 8090; // port to run the http server on

    // Smarthings Hub Information
    //IPAddress hubIp(192, 168, 1, 149); // smartthings hub ip // <---You must edit this line!
    //const unsigned int hubPort = 39500; // smartthings hub port

    // Hubitat Hub Information
    IPAddress hubIp(192, 168, 1, 252); // hubitat hub ip // <---You must edit this line!
    const unsigned int hubPort = 39501; // hubitat hub port

    //******************************************************************************************
    //st::Everything::callOnMsgSend() optional callback routine. This is a sniffer to monitor
    // data being sent to ST. This allows a user to act on data changes locally within the
    // Arduino sktech.
    //******************************************************************************************
    void callback(const String &msg)
    {
    // Serial.print(F("ST_Anything Callback: Sniffed data = "));
    // Serial.println(msg);

    //TODO: Add local logic here to take action when a device's value/state is changed

    //Masquerade as the ThingShield to send data to the Arduino, as if from the ST Cloud (uncomment and edit following line)
    //st::receiveSmartString("Put your command here!"); //use same strings that the Device Handler would send
    }

    //******************************************************************************************
    //Arduino Setup() routine
    //******************************************************************************************
    void setup()
    {


    //Interrupt Sensors
    static st::IS_Button sensor1(F("button1"), PIN_BUTTON_1, 1000, LOW, true, 500);
    static st::IS_Button sensor2(F("button2"), PIN_BUTTON_2, 1000, LOW, true, 500);

    //Executors
    static st::EX_Servo executor1(F("servo1"), PIN_SERVO_1 , 90, true, 1000, 0, 180, 2000, 544, 2400);

    //*****************************************************************************
    // Configure debug print output from each main class
    // -Note: Set these to "false" if using Hardware Serial on pins 0 & 1
    // to prevent communication conflicts with the ST Shield communications
    //*****************************************************************************
    st::Everything::debug=true;
    st::Executor::debug=true;
    st::Device::debug=true;
    st::pollingSensor::debug=true;
    st::InterruptSensor::debug=true;

    //*****************************************************************************
    //Initialize the "Everything" Class
    //*****************************************************************************

     
     
    Последнее редактирование: 6 сен 2019
  2. b707

    b707 Гуру

    для начала вставьте код правильно
     
  3. 848667

    848667 Нуб

    исправил