ARDUINO IDE Siapkeun pikeun DCC Controller
Arduino IDE set-up pikeun DCC controller
Lengkah 1. IDE lingkungan set-up. Muatkeun papan ESP.
Nalika anjeun mimiti masang Arduino IDE, éta ngan ukur ngadukung papan dumasar ARM. Urang kedah nambihan dukungan pikeun papan dumasar ESP. Arahkeun ka File… Préferénsi
Ketik garis ieu di handap kana Manajer Papan Tambahan URLS kotak. Catetan aya underscores di jerona, euweuh spasi. http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://dl.espressif.com/dl/package_esp32_index.json
Ogé pariksa kotak nu nyebutkeun Témbongkeun Verbose salila kompilasi. Ieu masihan kami langkung seueur inpormasi upami aya anu gagal salami kompilasi.
Catet yén garis di luhur nambihan dukungan pikeun kadua alat esp8266 sareng esp32. Dua string json dipisahkeun ku koma.
Ayeuna pilih papan Vérsi 2.7.4 ti manajer dewan
Pasang Vérsi 2.7.4. Ieu jalan. Vérsi 3.0.0 sareng anu langkung luhur henteu tiasa dianggo pikeun proyék ieu. Ayeuna, balik deui kana menu Alat, pilih papan anu anjeun anggo. Pikeun proyék ieu bakal janten nodeMCU 1.0 atanapi WeMos D1R1
Di dieu urang milih WeMos D1R1. (ngarobah ieu tina Nano)
Lengkah 2. IDE lingkungan set-up. Beban ESP8266 Sketsa Data Unggah tambihan.
Urang kedah ngamuat tambihan ieu pikeun ngamungkinkeun urang nyebarkeun (nempatkeun) halaman HTML sareng anu sanésna files dina alat ESP. Ieu hirup dina folder data di jero folder proyék Anjeun https://github.com/esp8266/arduino-esp8266fs-plugin/releases
Pindah ka URL luhur tur ngundeur ESP8266FS-0.5.0.zip.
Jieun folder Alat di jero folder Arduino Anjeun. Buka sleting eusi zip file kana folder Alat ieu. Anjeun kudu mungkas nepi ka ieu;
Sareng pilihan ménu énggal bakal muncul dina Alat…
Upami anjeun nyauran pilihan ménu éta, IDE bakal unggah eusi folder data ka papan. Ok kitu éta lingkungan IDE nyetél pikeun pamakéan ESP8266 umum, ayeuna urang kudu nambahan sababaraha perpustakaan ka Arduino / folder Perpustakaan pikeun proyék husus ieu.
Lengkah 3. Unduh perpustakaan sareng pasang sacara manual.
Urang kedah ngaunduh perpustakaan ieu tina Github; https://github.com/me-no-dev/ESPAsyncTCP
Pencét kode, teras unduh zip. Éta bakal angkat ka folder undeuran anjeun. Pindah kana undeuran, panggihan zip, buka teras sered folder eusi "ESPAsyncTCP" ka Arduino / perpustakaan.
Upami nami folder ditungtungan ku "-master", teras ganti namina pikeun ngahapus "-master" tina tungtungna.
ie tina undeuran
Buka .zip pikeun ESPAsyncTCP-master, sarta sered folder ESPAsyncTCP-master ti jero ieu Arduino / Perpustakaan.
Catetan: Arduino / perpustakaan teu bisa make versi .zip, anjeun kudu Bahékeun berkas (séréd) folder nu dipikahoyong leuwih. Urang ogé butuh https://github.com/fmalpartida/New-LiquidCrystal
Unduh pos teras sered eusina ka Arduino / perpustakaan sareng cabut -master ending.
Sarta pamustunganana, urang kudu ArduinoJson-5.13.5.zip ti link di handap https://www.arduinolibraries.info/libraries/arduino-json
download lajeng sered eusi zip ka Arduino / perpustakaan
Lengkah 4. Pasang deui sababaraha perpustakaan nganggo Arduino Library Manager.
Urang peryogi dua perpustakaan deui, sareng ieu asalna tina Manajer Perpustakaan Arduino anu ngagaduhan pilihan perpustakaan anu diwangun. Pindah ka Alat… Atur Pustaka…
Paké versi 1.0.3 tina Adafruit INA219. Ieu jalan.
Sareng ogé
Paké versi 2.1.0 tina WebSockets ti Markus Sattler, ieu dites jeung jalan. Kuring teu acan nguji versi engké.
OKÉ kitu éta sakabéh perpustakaan (alias rujukan) nu IDE perlu compile proyék ieu.
Lengkah 5. Ngundeur proyék ESP_DCC_Controller ti GitHub tur muka di IDE.
Pindah ka GitHub sareng unduh https://github.com/computski/ESP_DCC_controller
Klik tombol héjo "Kode", tur ngundeur pos teh. Teras buka seleting file sarta mindahkeun eusina ka folder Arduino. Ganti ngaran polder pikeun ngahapus "-main" tungtung dina nami folder. Anjeun kudu mungkas nepi ka folder ESP_ DCC_ controller dina folder Arduino Anjeun. Bakal ngandung hiji .INO file, rupa .H jeung .CPP files jeung folder data.
Klik dua kali dina .INO file pikeun muka proyék dina Arduino IDE.
Sateuacan urang pencét kompilasi, urang kedah ngonpigurasikeun ka kabutuhan anjeun…
Lengkah 6. Atur sarat anjeun dina Global. h
Proyék ieu tiasa ngadukung nodeMCU atanapi WeMo's D1R1 sareng ogé tiasa ngadukung sababaraha pilihan papan kakuatan (tameng motor) anu béda, sareng tiasa ngadukung alat-alat dina beus I2C sapertos monitor ayeuna, tampilan LCD sareng keypad. Sarta pamustunganana éta ogé bisa ngarojong jogwheel (rotar encoder). Wangunan paling dasar anu anjeun tiasa laksanakeun nyaéta tameng motor D1R1 sareng L298 WeMo.
Catet cara panggampangna pikeun nganonaktipkeun pilihan nyaéta nambahkeun hurup leutik n di hareup ngaranna dina pernyataan #define.
#define nNODEMCU_OPTION3
#define nBOARD_ESP12_SHIELD
#ngahartikeun WEMOS_D1R1_AND_L298_SHIELD
Pikeun example, luhureun NODEMCU_OPTION3 geus ditumpurkeun kalawan n, sarua keur nBOARD_ESP12_SHIELD. WEMOS_D1R1_AND_L298_SHIELD mangrupakeun pilihan aktip, sarta ieu bakal ngabalukarkeun compiler pamakéan konfigurasi pikeun ieu sakumaha didaptarkeun handap handap.
Pikeun ngalangkungan konfigurasi ieu:
#elif ditetepkeun(WEMOS_D1R1_AND_L298_SHIELD)
/*Wemos D1-R1 tumpuk jeung tameng L298, perhatikeun yén D1-R2 mangrupakeun model anyar kalawan pinouts béda * /
/ * Motong jumpers BRAKE dina tameng L298. Ieu henteu diperyogikeun sareng urang henteu hoyong aranjeunna disetir ku pin I2C sabab bakal ngaruksak sinyal DCC.
dewan boga faktor formulir Arduino, pin nyaéta kieu
D0 GPIO3 RX
D1 GPIO1 TX
D2 GPIO16 keteg jajantung sareng jogwheel pushbutton (aktif hi)
D3 GPIO5 DCC ngaktifkeun (pwm)
D4 GPIO4 Jog1
Sinyal D5 GPIO14 DCC (dir)
Sinyal D6 GPIO12 DCC (dir)
D7 GPIO13 DCC ngaktifkeun (pwm)
D8 GPIO0 SDA, kalawan 12k pullup
D9 GPIO2 SCL, kalawan 12k pullup
D10 GPIO15 Jog2
di luhur mangrupakeun catetan pikeun manusa, ngidinan Anjeun terang nu ESP GPIOs bakal ngalakukeun fungsi nu. Catet yén Arduino D1-D10 mun GPIO mappings béda jeung titik MCU D1-D10 mun GPIO mappings */
#define USE_ANALOG_MEASUREMENT
#define ANALOG_SCALING 3.9 //nalika nganggo A sareng B paralel (2.36 pikeun cocog multimeter RMS)
Kami bakal nganggo AD dina ESP sareng sanés alat ngawaskeun I2C éksternal sapertos INA219 nganonaktipkeun
ieu nganggo n USE_ ANALOG_ MEASUREMENT upami anjeun hoyong nganggo INA219
#define PIN_HEARTBEAT 16 //jeung jogwheel pushbutton
#define 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};
Nangtukeun mana pin bakal ngajalankeun sinyal DCC, urang boga dua saluran, ngajalankeun di-fase sangkan bisa umum aranjeunna babarengan. Saluran A nyaéta dcc_ info [] sareng saluran B nyaéta dcc_ info A []. Ieu didefinisikeun salaku makro sareng backslash mangrupikeun pananda garis-terusan.
#define PIN_SCL 2 //12k pullup
#define PIN_SDA 0 //12k pullup
#definisikeun PIN_JOG1 4
#define PIN_JOG2 15 //12k pulldown
Nangtukeun pin (GPIOs) nu ngajalankeun I2C SCL / SDA lajeng ogé inputs jogwheel 1 jeung 2
#define KEYPAD_ADDRESS 0x21 //pcf8574
Dipaké pikeun keypad matriks 4 x 4 pilihan, nu discan maké chip pcf8574
// addr, en, rw, rs, d4, d5, d6, d7, lampu tukang, polaritasna. kami nganggo ieu salaku alat 4 bit // pinout tampilan abdi rs, rw, e, d0-d7. ngan d<4-7> dipaké. <210> némbongan sabab bit <012> //dipetakeun salaku EN, RW, RS jeung urang kudu nyusun ulang eta per urutan sabenerna dina hardware, 3 dipetakeun // kana lampu tukang. <4-7> nembongan dina urutan dina ransel jeung dina tampilan.
#define BOOTUP_LCD LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIF); //Ransel YwRobot
Dipaké pikeun nangtukeun tur ngonpigurasikeun ransel I2C nu drive 1602 tampilan LCD (pilihan), ieu softconfigurable tur aya sababaraha backpacks sadia nu pin konfigurasi rupa-rupa.
#endif
Lengkah 7. Compile sarta unggah ka dewan.
Ayeuna anjeun parantos ngonpigurasikeun combo dewan anu anjeun badé dianggo, anjeun tiasa nyusun proyék. Mun anjeun teu maksudna ngagunakeun 4 × 4 matrix keypad, sarta LCD, euweuh masalah, ninggalkeun dina harti maranéhna salaku software ekspektasi pikeun ngonpigurasikeun aranjeunna. Sistem bakal tiasa dianggo saé dina WiFi tanpa aranjeunna.
Dina IDE, simbol keletik (verifikasi) sabenerna "Compile". Pencét ieu sareng anjeun bakal ningali rupa-rupa pesen anu muncul (upami anjeun ngaktipkeun kompilasi Verbose) nalika sistem ngumpulkeun rupa-rupa perpustakaan sareng ngaitkeun sadayana. Upami sadayana tiasa dianggo, sareng upami anjeun leres-leres nuturkeun sadaya léngkah di luhur, maka anjeun kedah ningali pesen kasuksésan muncul. Anjeun ayeuna siap pencét tombol panah-katuhu (unggah), tapi sateuacan anjeun ngalakukeun ieu, pariksa yén anjeun parantos milih port COM anu leres pikeun dewan dina menu Alat.
Saatos unggah anu suksés (ngagunakeun kabel USB anu kualitasna saé) anjeun ogé kedah ngalamar éta Beban menu ESP8266 Sketsa Data pilihan dina Pakakas. Ieu bakal nempatkeun eusi folder data kana alat (sadayana kaca HTML).
Anjeun rengse. Buka monitor serial, klik tombol reset jeung anjeun kudu ningali boot alat jeung nyeken alat I2C. Anjeun ayeuna tiasa nyambung ka éta liwat Wifi, sareng siap ngahubungkeun ka papan kakuatan na (tameng motor).
Dokumén / Sumberdaya
![]() |
ARDUINO IDE Siapkeun pikeun DCC Controller [pdf] Parentah IDE Nyetél pikeun DCC Controller, IDE Nyetél, Nyetél pikeun DCC Controller, DCC Controller IDE Nyetél, DCC Controller |