ARDUINO IDE DCC Controller-д зориулсан тохируулга 

ARDUINO IDE лого

DCC хянагчдад зориулсан Arduino IDE тохируулга

Алхам 1. IDE орчны тохиргоо. ESP хавтанг ачаална уу.

Arduino IDE-г анх суулгахад энэ нь зөвхөн ARM дээр суурилсан хавтанг дэмждэг. Бид ESP дээр суурилсан хавтангуудад дэмжлэг үзүүлэх хэрэгтэй. руу шилжих File… Сонголтууд

IDE орчны тохиргоо. ESP хавтанг ачаална уу
IDE орчны тохиргоо. ESP хавтанг ачаална уу

Доорх энэ мөрийг Нэмэлт самбарын менежерт бичнэ үү URLS хайрцаг. Доод зураас, хоосон зай байхгүй гэдгийг анхаарна уу.  http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://dl.espressif.com/dl/package_esp32_index.json
Мөн эмхэтгэлийн явцад Show Verbose гэсэн нүдийг чагтална. Энэ нь эмхэтгэлийн явцад ямар нэг зүйл бүтэлгүйтсэн тохиолдолд бидэнд илүү их мэдээлэл өгдөг.

Дээрх мөрөнд esp8266 төхөөрөмж болон шинэ esp32-д дэмжлэг үзүүлэхийг анхаарна уу. Хоёр json мөрийг таслалаар тусгаарлана.
Одоо самбар сонгоно уу 2.7.4 хувилбар удирдах зөвлөлийн менежерээс

DCC хянагчдад зориулсан Arduino IDE тохируулга

2.7.4 хувилбарыг суулгана уу. Энэ ажилладаг. Энэ төсөлд 3.0.0 ба түүнээс дээш хувилбар ажиллахгүй. Одоо Tools цэсэнд буцаж очоод ашиглах самбараа сонгоно уу. Энэ төслийн хувьд энэ нь nodeMCU 1.0 эсвэл WeMos D1R1 байх болно

DCC хянагчдад зориулсан Arduino IDE тохируулга

Энд бид WeMos D1R1-ийг сонгоно. (Үүнийг Нано-оос өөрчилсөн)

Алхам 2. IDE орчны тохиргоо. ESP8266 Sketch Data Upload нэмэлтийг ачаална уу.

Бид HTML хуудас болон бусад зүйлийг нийтлэх (байруулах) боломжийг олгохын тулд энэ нэмэлтийг ачаалах хэрэгтэй fileESP төхөөрөмж дээр. Эдгээр нь таны төслийн хавтас доторх өгөгдлийн хавтсанд амьдардаг https://github.com/esp8266/arduino-esp8266fs-plugin/releases
руу оч URL дээш болон ESP8266FS-0.5.0.zip татаж авна уу.
Arduino хавтас дотроо Tools хавтас үүсгэ. Зипийн агуулгыг задлаарай file Энэ Tools хавтас руу. Та үүгээр дуусах ёстой;

DCC хянагчдад зориулсан Arduino IDE тохируулга

Хэрэгслийн доор шинэ цэсийн сонголт гарч ирнэ…

DCC хянагчдад зориулсан Arduino IDE тохируулга

Хэрэв та энэ цэсийн сонголтыг дуудвал IDE нь өгөгдлийн хавтасны агуулгыг самбарт байршуулах болно. За, энэ бол ерөнхий ESP8266 ашиглахад зориулагдсан IDE орчин юм, одоо бид энэ тодорхой төслийн Arduino/Номын сангийн хавтсанд зарим санг нэмэх шаардлагатай байна.

Алхам 3. Номын сангуудыг татаж аваад гараар суулгана уу.

Бид эдгээр сангуудыг Github-аас татаж авах хэрэгтэй; https://github.com/me-no-dev/ESPAsyncTCP

DCC хянагчдад зориулсан Arduino IDE тохируулга

Код дээр дарж, дараа нь зип татаж аваарай. Энэ нь таны татан авалтын хавтсанд очих болно. Татаж авсан файлууд руу орж, зипийг олоод нээгээд "ESPAsyncTCP" агуулгын хавтсыг Arduino/libraries руу чирнэ үү.
Хэрэв хавтасны нэр "-master" гэж төгссөн бол "-master"-ийг төгсгөлөөс нь хасахын тулд нэрийг нь өөрчил.
өөрөөр хэлбэл татан авалтаас

DCC хянагчдад зориулсан Arduino IDE тохируулга

ESPAsyncTCP-master-д зориулсан .zip файлыг нээж, дотроос ESPAsyncTCP-master хавтасыг Arduino/Libraries руу чирнэ үү.

DCC хянагчдад зориулсан Arduino IDE тохируулга

Жич: Arduino/номын сангууд .zip хувилбарыг ашиглах боломжгүй тул та хүссэн хавтасаа задлах (чирэх) хэрэгтэй. Бидэнд ч бас хэрэгтэй https://github.com/fmalpartida/New-LiquidCrystal
Зипийг татаж аваад агуулгыг нь Arduino/libraries руу чирээд -master төгсгөлийг устгана уу.

Эцэст нь бидэнд доорх линкээс ArduinoJson-5.13.5.zip хэрэгтэй https://www.arduinolibraries.info/libraries/arduino-json

татаж аваад дараа нь zip агуулгыг Arduino/libraries руу чирнэ үү

Алхам 4. Arduino Library Manager ашиглан хэд хэдэн номын сан суулгана уу.

Бидэнд өөр хоёр номын сан хэрэгтэй байгаа бөгөөд эдгээр нь суулгасан номын сангуудыг агуулсан Arduino номын сангийн менежерээс ирдэг. Хэрэгсэл рүү очих... Номын санг удирдах...

DCC хянагчдад зориулсан Arduino IDE тохируулга
DCC хянагчдад зориулсан Arduino IDE тохируулга

Adafruit INA1.0.3-ийн 219 хувилбарыг ашиглана уу. Энэ ажилладаг. 

Мөн түүнчлэн

DCC хянагчдад зориулсан Arduino IDE тохируулга

-ийн 2.1.0 хувилбарыг ашиглах WebМаркус Сатллерийн залгуурууд, үүнийг туршиж, ажиллаж байна. Би дараагийн хувилбаруудыг туршиж үзээгүй.
За, энэ бол IDE-д энэ төслийг эмхэтгэх шаардлагатай бүх номын сангууд (өөрөөр хэлбэл лавлагаа) юм.

Алхам 5. GitHub-аас ESP_DCC_Controller төслийг татаж аваад IDE дээр нээнэ үү.

GitHub руу ороод татаж аваарай https://github.com/computski/ESP_DCC_controller

Ногоон "Код" товчийг дараад зипийг татаж авна уу. Дараа нь зипийг нээнэ үү file болон агуулгыг нь Arduino хавтас руу зөөнө үү. Фолдерын нэр дээрх "-main" төгсгөлийг арилгахын тулд фолдерын нэрийг өөрчил. Та Arduino хавтсандаа ESP_ DCC_ хянагч хавтастай байх ёстой. Энэ нь .INO агуулах болно file, төрөл бүрийн .H ба .CPP files болон өгөгдлийн хавтас.

DCC хянагчдад зориулсан Arduino IDE тохируулга

.INO дээр давхар товшино уу file Arduino IDE дээр төслийг нээх.
Хөрвүүлэлт хийхээс өмнө бид таны шаардлагад нийцүүлэн тохируулах хэрэгтэй...

Алхам 6. Глобал дахь шаардлагаа тавь. h

Энэхүү төсөл нь nodeMCU эсвэл WeMo-н D1R1-ийг дэмжихээс гадна хэд хэдэн өөр цахилгаан самбар (мотор бамбай)-ыг дэмжихээс гадна одоогийн дэлгэц, LCD дэлгэц, товчлуур зэрэг I2C автобусны төхөөрөмжүүдийг дэмжих боломжтой. Эцэст нь энэ нь гүйлтийн дугуйг (эргэдэг кодлогч) дэмждэг. Таны хийж чадах хамгийн энгийн загвар бол WeMo-н D1R1 болон L298 моторын бамбай юм.
Сонголтыг идэвхгүй болгох хамгийн хялбар арга бол #define командын нэрний өмнө жижиг n үсгийг нэмэх явдал гэдгийг анхаарна уу.
#nNODEMCU_OPTION3-ыг тодорхойлох
#nBOARD_ESP12_SHIELD-г тодорхойлох
#тодорхойлох WEMOS_D1R1_AND_L298_SHIELD
Жишээ ньample, дээрх NODEMCU_OPTION3-г n-ээр идэвхгүй болгосон, nBOARD_ESP12_SHIELD-д мөн адил. WEMOS_D1R1_AND_L298_SHIELD нь идэвхтэй сонголт бөгөөд энэ нь хөрвүүлэгчийг доор жагсаасан тохиргоог ашиглахад хүргэнэ.

Энэ тохиргоог давахын тулд: 

#elif тодорхойлсон(WEMOS_D1R1_AND_L298_SHIELD)

/*Wemos D1-R1 нь L298 бамбайтай, D1-R2 нь өөр өөр зүү бүхий шинэ загвар гэдгийг анхаарна уу*/
/*L298 бамбай дээрх BRAKE холбогчийг хайчилж ав. Эдгээр нь шаардлагагүй бөгөөд DCC дохиог эвдэх тул I2C зүүгээр удирдуулахыг бид хүсэхгүй байна.

Уг самбар нь Arduino хэлбэрийн хүчин зүйлтэй бөгөөд зүү нь дараах байдалтай байна
D0 GPIO3 RX
D1 GPIO1 TX
D2 GPIO16 зүрхний цохилт болон гүйлтийн хүрдний товчлуур (идэвхтэй сайн байна уу)
D3 GPIO5 DCC идэвхжүүлэх (pwm)
D4 GPIO4 Jog1
D5 GPIO14 DCC дохио (дир)
D6 GPIO12 DCC дохио (дир)
D7 GPIO13 DCC идэвхжүүлэх (pwm)
D8 GPIO0 SDA, 12к таталттай
D9 GPIO2 SCL, 12к таталттай
D10 GPIO15 Jog2
Дээрх нь хүмүүст зориулсан тэмдэглэл бөгөөд ямар ESP GPIO ямар функцийг гүйцэтгэхийг танд мэдэгдэнэ. гэдгийг анхаарна уу Arduino D1-D10-аас GPIO-ийн зураглал нь MCU D1-D10-ийн GPIO-ийн зураглалаас ялгаатай. */

#ХЭРЭГЛЭЭНИЙ_АНАЛОГ_ХЭМЖЭЭГ тодорхойлох
#ANALOG_SCALING 3.9-ийг тодорхойлох //A ба B-г зэрэгцүүлэн ашиглах үед (мултиметрийн RMS-ийг тохируулахын тулд 2.36)
Бид INA2 идэвхгүй болгох гэх мэт гадны I219C гүйдлийн хяналтын төхөөрөмж биш харин ESP дээр AD-г ашиглах болно.
Хэрэв та INA219 ашиглахыг хүсвэл үүнийг n USE_ ANALOG_ MEASUREMENT-тэй хамт хийнэ үү.

#PIN_HEARTBEAT 16-г тодорхойлох //ба гүйлтийн дугуйны товчлуур
#DCC_PINS тодорхойлох \
uint32 dcc_info[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO12, 12 , 0}; \
uint32 enable_info[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO5, 5 , 0}; \
uint32 dcc_infoA[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO14, 14 , 0}; \
uint32 enable_infoA[4] = { PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO13,13 , 0};
DCC дохиог ямар тээглүүр жолоодохыг тодорхойлдог. Бид хоёр сувагтай, үе шаттайгаар ажиллаж байгаа тул бид тэдгээрийг хамтдаа нэгтгэх боломжтой. A-суваг нь dcc_ info [], B суваг нь dcc_ info A [] юм. Эдгээр нь макро хэлбэрээр тодорхойлогддог ба урвуу зураас нь шугамын үргэлжлэл тэмдэг юм.

#PIN_SCL 2-г тодорхойлох //12к татах
#PIN_SDA-г тодорхойлох 0 //12к татах
#PIN_JOG1-г тодорхойлох 4
#PIN_JOG2-г тодорхойлох 15 //12к татах

I2C SCL/SDA-г жолооддог тээглүүрүүдийг (GPIO), дараа нь жолооны хүрдний 1 ба 2 оролтуудыг тодорхойлно уу.

#ТОЛБОРЫН_ХАЯГ 0x21 тодорхойлох //pcf8574

pcf4 чип ашиглан сканнердсан нэмэлт 4 x 8574 матриц товчлуурт ашигладаг.

//addr, en,rw,rs,d4,d5,d6,d7,арын гэрэлтүүлэг, туйлшрал. Бид үүнийг 4 бит төхөөрөмж болгон ашиглаж байна //миний дэлгэцийн pinout нь rs,rw,e,d0-d7. зөвхөн d<4-7> ашигладаг. <210> гарч ирнэ, учир нь <012> битүүд //EN,RW,RS гэж дүрслэгдсэн бөгөөд бид тэдгээрийг техник хангамж дээрх бодит дарааллаар дахин эрэмбэлэх шаардлагатай, 3-ыг //арын гэрэлтүүлэгт буулгасан. Үүргэвч болон дэлгэц дээр <4-7> гэсэн дарааллаар гарч ирнэ.

#BOOTUP_LCD LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, ЭЕРЭГ)-ийг тодорхойлох; //YwRobot үүргэвч

2 LCD дэлгэцийг (заавал биш) жолооддог I1602C үүргэвчийг тодорхойлох, тохируулахад ашигладаг бөгөөд үүнийг зөөлөн тохируулах боломжтой бөгөөд зүү тохиргоо нь өөр өөр байдаг хэд хэдэн үүргэвчнүүд байдаг.
#endif

Алхам 7. Эмхэтгэж, самбарт байршуулна уу.

Одоо та ашиглах гэж буй самбарын комбинаа тохируулсан тул та төслийг эмхэтгэх боломжтой. Хэрэв та 4×4 матрицын товчлуур болон LCD ашиглах бодолгүй байгаа бол ямар ч асуудал байхгүй, програм хангамжийн тохиргоог хийх гэж байгаа тул тэдгээрийн тодорхойлолтыг үлдээгээрэй. Тэдгээргүйгээр систем WiFi-ээр сайн ажиллах болно.
IDE дээр тэмдэглэгээний тэмдэг (шалгах) нь үнэндээ "Хөрвүүлэх" юм. Үүнийг товшоод систем нь янз бүрийн сангуудыг нэгтгэж, бүгдийг нь хооронд нь холбох үед янз бүрийн мессежүүд гарч ирэх болно (таны дэлгэрэнгүй эмхэтгэлийг идэвхжүүлсэн тохиолдолд). Хэрэв бүх зүйл сайн ажиллаж байгаа бөгөөд хэрэв та дээрх бүх алхмуудыг яг дагаж мөрдвөл амжилттай гэсэн мессеж гарч ирэх болно. Та одоо баруун сум (байршуулах) товчийг дарахад бэлэн байна, гэхдээ үүнийг хийхээсээ өмнө Tools цэсэн дэх самбарын зөв COM портыг сонгосон эсэхээ шалгана уу.
Амжилттай байршуулсны дараа (сайн чанарын USB кабель ашигла) та мөн дуудах хэрэгтэй ESP8266 Sketch Data цэсийг ачаална уу "Хэрэгслүүд" доор байгаа сонголт. Энэ нь өгөгдлийн хавтасны агуулгыг төхөөрөмжид (бүх HTML хуудас) оруулах болно.
Та дууслаа. Цуваа дэлгэцийг нээгээд дахин тохируулах товчийг дарснаар та төхөөрөмжийг ачаалж, I2C төхөөрөмжүүдийг хайх хэрэгтэй. Та одоо үүнтэй Wi-Fi-аар холбогдох боломжтой бөгөөд түүнийг цахилгаан самбарт (моторын бамбай) холбоход бэлэн боллоо.

Баримт бичиг / нөөц

ARDUINO IDE DCC Controller-д зориулсан тохируулга [pdf] Заавар
DCC Controller-д зориулсан IDE Setup, IDE Setup, Setup for DCC Controller, DCC Controller IDE Setup, DCC Controller

Лавлагаа

Сэтгэгдэл үлдээгээрэй

Таны имэйл хаягийг нийтлэхгүй. Шаардлагатай талбаруудыг тэмдэглэсэн *