ARDUINO IDE барои контролери DCC насб кунед 

Логотипи ARDUINO IDE

Танзими Arduino IDE барои контролери DCC

Қадами 1. Танзими муҳити IDE. Тахтаҳои ESP-ро бор кунед.

Вақте ки шумо бори аввал Arduino IDE-ро насб мекунед, он танҳо тахтаҳои дар асоси ARM асосёфтаро дастгирӣ мекунад. Мо бояд барои тахтаҳои асоси ESP дастгирӣ илова кунем. Гузариш ба File… Афзалиятҳо

Танзими муҳити IDE. Тахтаҳои ESP-ро бор кунед
Танзими муҳити IDE. Тахтаҳои ESP-ро бор кунед

Ин сатрро дар зер ба Менеҷери Шӯрои иловагӣ ворид кунед URLҚуттии S. Аҳамият диҳед, ки дар он зерхатҳо мавҷуданд, фосила надоранд.  http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://dl.espressif.com/dl/package_esp32_index.json
Инчунин қуттиеро, ки мегӯяд, дар вақти тартибдиҳӣ нишон диҳед. Ин ба мо маълумоти бештар медиҳад, агар чизе дар вақти тартибдиҳӣ ноком шавад.

Дар хотир доред, ки сатри боло дастгирии ҳам барои дастгоҳҳои esp8266 ва ҳам esp32 навтарро илова мекунад. Ду сатри json бо вергул ҷудо карда мешаванд.
Акнун панелро интихоб кунед версияи 2.7.4 аз мудири правления

Танзими Arduino IDE барои контролери DCC

Версияи 2.7.4-ро насб кунед. Ин кор мекунад. Версияи 3.0.0 ва навтар барои ин лоиҳа кор намекунад. Акнун, ба менюи Tools баргардед, тахтаеро, ки шумо истифода мебаред, интихоб кунед. Барои ин лоиҳа он ё nodeMCU 1.0 ё WeMos D1R1 хоҳад буд

Танзими Arduino IDE барои контролери DCC

Дар ин ҷо мо WeMos D1R1 -ро интихоб мекунем. (тағйир додани ин аз Nano)

Қадами 2. Танзими муҳити IDE. Иловаи боркунии маълумотҳои Sketch ESP8266-ро бор кунед.

Мо бояд ин изофаро бор кунем, то ба мо иҷозат диҳем, ки саҳифаҳои HTML ва ғайраро нашр кунем (гузорем). files дар дастгоҳи ESP. Инҳо дар папкаи маълумот дар дохили папкаи лоиҳаи шумо зиндагӣ мекунанд https://github.com/esp8266/arduino-esp8266fs-plugin/releases
Ба URL боло ва зеркашӣ ESP8266FS-0.5.0.zip.
Дар дохили ҷузвдони Arduino-и худ папкаи Tools эҷод кунед. Мундариҷаи zip-ро кушоед file ба ин папкаи Tools. Шумо бояд бо ин хотима диҳед;

Танзими Arduino IDE барои контролери DCC

Ва варианти нави меню дар зери Tools… пайдо мешавад.

Танзими Arduino IDE барои контролери DCC

Агар шумо ин варианти менюро истифода баред, IDE мундариҷаи ҷузвдони маълумотро ба тахта бор мекунад. Хуб, ин муҳити IDE барои истифодаи умумии ESP8266 аст, ҳоло мо бояд баъзе китобхонаҳоро ба ҷузвдони Arduino/Libraries барои ин лоиҳаи мушаххас илова кунем.

Қадами 3. Китобхонаҳоро зеркашӣ кунед ва дастӣ насб кунед.

Мо бояд ин китобхонаҳоро аз Github зеркашӣ кунем; https://github.com/me-no-dev/ESPAsyncTCP

Танзими Arduino IDE барои контролери DCC

Рамзро клик кунед ва пас zip-ро зеркашӣ кунед. Он ба папкаи зеркашиҳои шумо меравад. Ба зеркашиҳо ворид шавед, zip-ро пайдо кунед, онро кушоед ва папкаи мундариҷаи "ESPAsyncTCP" -ро ба Arduino/libraries кашед.
Агар номи ҷузвдон бо "-master" тамом шавад, он гоҳ номи онро тағир диҳед, то "-master" -ро аз охири он хориҷ кунед.
яъне аз зеркашиҳо

Танзими Arduino IDE барои контролери DCC

.zip-ро барои ESPAsyncTCP-master кушоед ва ҷузвдони ESPAsyncTCP-мастерро аз дохили он ба Arduino/Libraries кашед.

Танзими Arduino IDE барои контролери DCC

Шарҳ: Arduino/китобхонаҳо наметавонанд версияи .zip-ро истифода баранд, ба шумо лозим аст, ки ҷузвдони дилхоҳро аз болои он боз кунед (кашед). Ба мо хам лозим аст https://github.com/fmalpartida/New-LiquidCrystal
Zip-ро зеркашӣ кунед ва мундариҷаи онро ба Arduino/libraries кашед ва охири -мастерро хориҷ кунед.

Ва ниҳоят, ба мо аз истиноди зер ArduinoJson-5.13.5.zip лозим аст https://www.arduinolibraries.info/libraries/arduino-json

зеркашӣ ва сипас мундариҷаи zip-ро ба Arduino/libraries кашед

Қадами 4. Бо истифода аз менеҷери китобхонаи Arduino якчанд китобхонаҳои дигар насб кунед.

Ба мо ду китобхонаи дигар лозим аст ва онҳо аз менеҷери китобхонаи Arduino гирифта шудаанд, ки интихоби китобхонаҳои дарунсохтро дар бар мегирад. Ба Асбобҳо равед… Китобхонаҳоро идора кунед…

Танзими Arduino IDE барои контролери DCC
Танзими Arduino IDE барои контролери DCC

Версияи 1.0.3-и Adafruit INA219-ро истифода баред. Ин кор мекунад. 

Ва инчунин

Танзими Arduino IDE барои контролери DCC

Истифода версияи 2.1.0 аз WebСокетҳо аз Маркус Саттлер, ин озмоиш ва кор мекунад. Ман версияҳои минбаъдаро санҷидаам.
Хуб, ин ҳама китобхонаҳост (истинодҳо), ки IDE бояд ин лоиҳаро тартиб диҳад.

Қадами 5. Лоиҳаи ESP_DCC_Controller -ро аз GitHub зеркашӣ кунед ва дар IDE кушоед.

Ба GitHub равед ва зеркашӣ кунед https://github.com/computski/ESP_DCC_controller

Тугмаи сабзи "Код" -ро клик кунед ва почтаро зеркашӣ кунед. Сипас zip-ро кушоед file ва мундариҷаи онро ба ҷузвдони Arduino интиқол диҳед. Номи ҷузвдонро тағир диҳед, то охири "-main" дар номи ҷузвдон хориҷ карда шавад. Шумо бояд бо папкаи ESP_ DCC_ контролери дар папкаи Arduino худ хотима диҳед. Он дорои .INO хоҳад буд file, гуногунии .H ва .CPP files ва папкаи маълумот.

Танзими Arduino IDE барои контролери DCC

.INO-ро ду маротиба клик кунед file барои кушодани лоиҳа дар Arduino IDE.
Пеш аз он ки мо компиляцияро пахш кунем, мо бояд ба талаботи шумо конфигуратсия кунем…

Қадами 6. Талаботи худро дар Global муқаррар кунед. ч

Ин лоиҳа метавонад nodeMCU ё WeMo's D1R1-ро дастгирӣ кунад ва инчунин метавонад як қатор вариантҳои гуногуни панели барқро (сипари мотор) дастгирӣ кунад, инчунин он метавонад дастгоҳҳоро дар автобуси I2C, ба монанди монитор, дисплейи LCD ва клавиатура дастгирӣ кунад. Ва дар ниҳоят он метавонад чархи чархро (рамзгузори чархзананда) дастгирӣ кунад. Сохтмони асоситарине, ки шумо метавонед анҷом диҳед, ин сипари мотории WeMo D1R1 ва L298 мебошад.
Аҳамият диҳед, ки роҳи осонтарини хомӯш кардани опсия ин аст, ки дар баёнияи #define ба пеш номи он ҳарфи хурд n илова кунед.
#define 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 модели навтар бо pinouts гуногун аст*/
/*Ҷимпсерҳои BRAKE-ро дар сипари L298 буред. Инҳо талаб карда намешаванд ва мо намехоҳем, ки онҳо тавассути пинҳои I2C ронда шаванд, зеро он сигнали DCC-ро вайрон мекунад.

Шӯрои дорои омили шакли 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, бо кашидани 12k
D9 GPIO2 SCL, бо кашидани 12k
D10 GPIO15 Jog2
Дар боло қайдҳо барои одамон мебошанд, ба шумо имкон медиҳад, ки кадом ESP GPIO-ҳо кадом вазифаҳоро иҷро мекунанд. Аҳамият диҳед, ки Харитасозии Arduino D1-D10 ба GPIO аз гиреҳи MCU D1-D10 ба харитасозии GPIO фарқ мекунад */

#ИСТИФОДАИ_АНАЛОГИ_ченкуниро муайян кунед
#define ANALOG_SCALING 3.9 //ҳангоми истифодаи A ва B дар баробари (2.36 барои мувофиқати RMS мултиметрӣ)
Мо AD-ро дар ESP истифода хоҳем кард, на як дастгоҳи берунаи мониторинги ҷорӣ I2C, ба монанди хомӯш кардани INA219
ин бо n USE_ ANALOG_ MEASUREMENT агар шумо хоҳед, ки INA219-ро истифода баред

#муайян кардани 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 //12k pullup
# муайян кардани PIN_SDA 0 //12k pullup
#муайян кардани PIN_JOG1 4
#муайян PIN_JOG2 15 //12k pulldown

Пинҳо (GPIOs) -ро муайян кунед, ки I2C SCL/SDA-ро меронанд ва сипас воридоти чархи чархи 1 ва 2

#муайян кардани KEYPAD_ADDRESS 0x21 //pcf8574

Барои клавиатураи ихтиёрии матритсаи 4 x 4 истифода мешавад, ки бо истифода аз чипи pcf8574 скан карда мешавад

//addr, en,rw,rs,d4,d5,d6,d7, рӯшноӣ, қутбӣ. мо онро ҳамчун дастгоҳи 4-бит истифода мебарем // pinout намоиши ман rs,rw,e,d0-d7 аст. факат г<4—7> истифода бурда мешавад. <210> пайдо мешавад, зеро битҳои <012> ҳамчун EN,RW,RS //харита карда шудаанд ва мо бояд онҳоро аз рӯи фармоиши воқеии сахтафзор аз нав тартиб диҳем, 3 //ба равшании қафо харита шудааст. <4-7> бо ҳамин тартиб дар ҷузвдон ва дар экран пайдо мешаванд.

#define BOOTUP_LCD LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, МАСЪАТ); // Ҷузвдони YwRobot

Барои муайян кардан ва танзим кардани ҷузвдони I2C, ки дисплейи LCD-и 1602-ро меронад (ихтиёрӣ) истифода мешавад, ин танзимшаванда аст ва якчанд ҷузвдонҳо мавҷуданд, ки конфигуратсияҳои пинҳои онҳо фарқ мекунанд.
#endif

Қадами 7. Тартиб диҳед ва ба тахта бор кунед.

Акнун шумо комбинатсияи тахтаеро, ки мехоҳед истифода баред, танзим кардед, шумо метавонед лоиҳаро тартиб диҳед. Агар шумо намехоҳед клавиатураи матритсаи 4×4 ва LCD-ро истифода баред, ҳеҷ мушкиле нест, дар таърифҳои онҳо гузоред, зеро нармафзор интизор аст, ки онҳоро танзим кунад. Система тавассути WiFi бе онҳо хуб кор мекунад.
Дар IDE, аломати қайд (тафтиш) воқеан "Тартиб додан" аст. Инро клик кунед ва шумо паёмҳои гуногун пайдо хоҳед кард (ба шарте, ки шумо маҷмӯи муфассалро фаъол карда бошед), зеро система китобхонаҳои гуногунро ҷамъоварӣ мекунад ва ҳамаро бо ҳам мепайвандад. Агар ҳама чиз хуб кор кунад ва ин бояд, агар шумо ҳамаи қадамҳои дар боло зикршударо дақиқ иҷро карда бошед, пас шумо бояд паёми муваффақият пайдо кунед. Шумо ҳоло омодаед, ки тугмаи тирчаи ростро пахш кунед (боргузорӣ кунед), аммо пеш аз он ки ин корро кунед, тафтиш кунед, ки шумо порти COM-ро барои тахта дар зери менюи Tools интихоб кардаед.
Пас аз боркунии бомуваффақият (истифодаи сими USB-и босифат) ба шумо низ лозим аст Менюи Sketch Data ESP8266-ро бор кунед интихоб дар зери Tools. Ин мундариҷаи ҷузвдони маълумотро ба дастгоҳ мегузорад (ҳамаи саҳифаҳои HTML).
Шумо тамом шудед. Мониторҳои силсилавиро кушоед, тугмаи барқароркуниро клик кунед ва шумо бояд боркунии дастгоҳро бинед ва дастгоҳҳои I2C-ро скан кунед. Шумо ҳоло метавонед ба он тавассути Wifi пайваст шавед ва он омода аст, ки ба панели барқии худ (сипари мотор) пайваст шавад.

Ҳуҷҷатҳо / Сарчашмаҳо

ARDUINO IDE барои контролери DCC насб кунед [pdf] Дастурҳо
Насб кардани IDE барои контролери DCC, насб кардани IDE, насб барои контроллер DCC, насб кардани IDE контроллер, DCC контроллер

Иқтибосҳо

Назари худро гузоред

Суроғаи почтаи электронии шумо нашр намешавад. Майдонҳои зарурӣ қайд карда шудаанд *