DCC નિયંત્રક માટે ARDUINO IDE સેટ અપ 

ARDUINO IDE લોગો

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

પગલું 1. IDE પર્યાવરણ સેટ-અપ. ESP બોર્ડ લોડ કરો.

જ્યારે તમે પ્રથમ Arduino IDE ઇન્સ્ટોલ કરો છો, ત્યારે તે માત્ર ARM આધારિત બોર્ડને જ સપોર્ટ કરે છે. અમારે ESP આધારિત બોર્ડ માટે સમર્થન ઉમેરવાની જરૂર છે. પર નેવિગેટ કરો File… પસંદગીઓ

IDE પર્યાવરણ સેટ-અપ. ESP બોર્ડ લોડ કરો
IDE પર્યાવરણ સેટ-અપ. ESP બોર્ડ લોડ કરો

વધારાના બોર્ડ મેનેજરમાં નીચે આ લીટી લખો URLએસ બોક્સ. નોંધ કરો કે તેમાં અન્ડરસ્કોર છે, કોઈ જગ્યા નથી.  http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://dl.espressif.com/dl/package_esp32_index.json
સંકલન દરમિયાન વર્બોઝ બતાવો કહે છે તે બોક્સને પણ ચેક કરો. જો સંકલન દરમિયાન કંઈક નિષ્ફળ જાય તો આ અમને વધુ માહિતી આપે છે.

નોંધ કરો કે ઉપરની લીટી esp8266 ઉપકરણો અને નવા esp32 બંને માટે આધાર ઉમેરે છે. બે json શબ્દમાળાઓ અલ્પવિરામ દ્વારા અલગ પડે છે.
હવે બોર્ડ પસંદ કરો સંસ્કરણ 2.7.4 બોર્ડ મેનેજર તરફથી

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

સંસ્કરણ 2.7.4 ઇન્સ્ટોલ કરો. આ કામ કરે છે. સંસ્કરણ 3.0.0 અને ઉચ્ચ આ પ્રોજેક્ટ માટે કામ કરતું નથી. હવે, પાછા ટૂલ્સ મેનૂમાં, તમે જે બોર્ડનો ઉપયોગ કરશો તે પસંદ કરો. આ પ્રોજેક્ટ માટે તે કાં તો નોડએમસીયુ 1.0 અથવા WeMos D1R1 હશે

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

અહીં આપણે WeMos D1R1 પસંદ કરીએ છીએ. (આને નેનોથી બદલીને)

પગલું 2. IDE પર્યાવરણ સેટ-અપ. ESP8266 સ્કેચ ડેટા અપલોડ એડ-ઇન લોડ કરો.

HTML પૃષ્ઠો અને અન્ય પ્રકાશિત કરવા માટે અમને આ એડ-ઇન લોડ કરવાની જરૂર છે fileESP ઉપકરણ પર s. આ તમારા પ્રોજેક્ટ ફોલ્ડરની અંદરના ડેટા ફોલ્ડરમાં રહે છે https://github.com/esp8266/arduino-esp8266fs-plugin/releases
પર જાઓ URL ઉપર અને ESP8266FS-0.5.0.zip ડાઉનલોડ કરો.
તમારા Arduino ફોલ્ડરની અંદર એક ટૂલ્સ ફોલ્ડર બનાવો. ઝિપની સામગ્રીને અનઝિપ કરો file આ ટૂલ્સ ફોલ્ડરમાં. તમારે આ સાથે સમાપ્ત થવું જોઈએ;

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

અને ટૂલ્સ હેઠળ એક નવો મેનુ વિકલ્પ દેખાશે...

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

જો તમે તે મેનૂ વિકલ્પનો ઉપયોગ કરો છો, તો IDE ડેટા ફોલ્ડરની સામગ્રીને બોર્ડ પર અપલોડ કરશે. ઠીક છે, તેથી સામાન્ય ESP8266 ઉપયોગ માટે IDE પર્યાવરણ સુયોજિત છે, હવે આપણે આ ચોક્કસ પ્રોજેક્ટ માટે Arduino/Libraries ફોલ્ડરમાં કેટલીક લાઇબ્રેરીઓ ઉમેરવાની જરૂર છે.

પગલું 3. પુસ્તકાલયો ડાઉનલોડ કરો અને મેન્યુઅલી ઇન્સ્ટોલ કરો.

આપણે આ પુસ્તકાલયોને ગીથબ પરથી ડાઉનલોડ કરવાની જરૂર છે; https://github.com/me-no-dev/ESPAsyncTCP

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

કોડ પર ક્લિક કરો અને પછી ઝિપ ડાઉનલોડ કરો. તે તમારા ડાઉનલોડ ફોલ્ડરમાં જશે. ડાઉનલોડ્સમાં જાઓ, ઝિપ શોધો, તેને ખોલો અને સામગ્રી ફોલ્ડર “ESPAsyncTCP” ને Arduino/લાઇબ્રેરીઓમાં ખેંચો.
જો ફોલ્ડરનું નામ "-master" સાથે સમાપ્ત થાય છે, તો પછી "-master" ને અંતમાંથી દૂર કરવા માટે તેનું નામ બદલો.
એટલે કે ડાઉનલોડ્સમાંથી

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

ESPAsyncTCP-master માટે .zip ખોલો અને ESPAsyncTCP-master ફોલ્ડરને આની અંદરથી Arduino/Libraries પર ખેંચો

DCC નિયંત્રક માટે Arduino IDE સેટ-અપ

નોંધ: Arduino/લાઇબ્રેરીઓ .zip સંસ્કરણનો ઉપયોગ કરી શકતી નથી, તમારે ઇચ્છિત ફોલ્ડરને અનઝિપ (ખેંચો) કરવાની જરૂર છે. અમને પણ જરૂર છે https://github.com/fmalpartida/New-LiquidCrystal
ઝિપ ડાઉનલોડ કરો પછી તેની સામગ્રીને Arduino/લાઇબ્રેરીઓમાં ખેંચો અને -master અંતને દૂર કરો.

અને છેલ્લે, અમને નીચેની લિંક પરથી ArduinoJson-5.13.5.zipની જરૂર છે https://www.arduinolibraries.info/libraries/arduino-json

ડાઉનલોડ કરો અને પછી ઝિપ સામગ્રીઓને Arduino/લાઇબ્રેરીઓમાં ખેંચો

પગલું 4. Arduino લાઇબ્રેરી મેનેજરનો ઉપયોગ કરીને થોડી વધુ લાઇબ્રેરીઓ ઇન્સ્ટોલ કરો.

અમને વધુ બે લાઇબ્રેરીઓની જરૂર છે, અને આ 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)

/*વેમોસ D1-R1 L298 શિલ્ડ સાથે સ્ટૅક્ડ છે, નોંધ કરો કે D1-R2 એ વિવિધ પિનઆઉટ્સ સાથેનું નવું મોડલ છે*/
/*L298 શિલ્ડ પર બ્રેક જમ્પર્સ કાપો. આ જરૂરી નથી અને અમે તેમને I2C પિન દ્વારા ચલાવવા માંગતા નથી કારણ કે તે DCC સિગ્નલને બગાડે છે.

બોર્ડમાં Arduino ફોર્મ ફેક્ટર છે, પિન નીચે મુજબ છે
D0 GPIO3 RX
D1 GPIO1 TX
D2 GPIO16 ધબકારા અને જોગવ્હીલ પુશબટન (સક્રિય હાઈ)
D3 GPIO5 DCC સક્ષમ (pwm)
D4 GPIO4 જોગ1
D5 GPIO14 DCC સિગ્નલ (dir)
D6 GPIO12 DCC સિગ્નલ (dir)
D7 GPIO13 DCC સક્ષમ (pwm)
D8 GPIO0 SDA, 12k પુલઅપ સાથે
D9 GPIO2 SCL, 12k પુલઅપ સાથે
D10 GPIO15 જોગ2
ઉપરોક્ત માનવીઓ માટે નોંધો છે, તમને જણાવે છે કે કયા ESP GPIO કયા કાર્યો કરશે. નોંધ કરો કે ધ Arduino D1-D10 થી GPIO મેપિંગ્સ નોડ MCU D1-D10 થી GPIO મેપિંગ્સથી અલગ છે */

#USE_ANALOG_MEASUREMENT ને વ્યાખ્યાયિત કરો
#ANALOG_SCALING 3.9 વ્યાખ્યાયિત કરો //સમાંતરમાં A અને B નો ઉપયોગ કરતી વખતે (2.36 મલ્ટિમીટર RMS સાથે મેળ કરવા માટે)
અમે ESP પર AD નો ઉપયોગ કરીશું અને બાહ્ય I2C વર્તમાન મોનિટરિંગ ઉપકરણ જેમ કે INA219 નિષ્ક્રિય
જો તમે 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_ માહિતી [] છે અને B-ચેનલ dcc_ માહિતી A [] છે. આને મેક્રો તરીકે વ્યાખ્યાયિત કરવામાં આવે છે અને બેકસ્લેશ એ લાઇન-કન્ટિન્યુએશન માર્કર છે.

#PIN_SCL 2 //12k પુલઅપ વ્યાખ્યાયિત કરો
#PIN_SDA 0 //12k પુલઅપ વ્યાખ્યાયિત કરો
#PIN_JOG1 વ્યાખ્યાયિત કરો 4
#PIN_JOG2 15 //12k પુલડાઉન વ્યાખ્યાયિત કરો

પિન (GPIO) ને વ્યાખ્યાયિત કરો જે I2C SCL/SDA ચલાવે છે અને પછી જોગવ્હીલ ઇનપુટ્સ 1 અને 2 પણ

# KEYPAD_ADDRESS 0x21 //pcf8574 વ્યાખ્યાયિત કરો

વૈકલ્પિક 4 x 4 મેટ્રિક્સ કીપેડ માટે વપરાય છે, જે pcf8574 ચિપનો ઉપયોગ કરીને સ્કેન કરવામાં આવે છે.

//addr, en,rw,rs,d4,d5,d6,d7,બેકલાઇટ, પોલેરિટી. અમે તેનો ઉપયોગ 4 બીટ ઉપકરણ તરીકે કરી રહ્યા છીએ // માય ડિસ્પ્લે પિનઆઉટ 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 બેકપેક

I2C બેકપેકને વ્યાખ્યાયિત કરવા અને રૂપરેખાંકિત કરવા માટે વપરાય છે જે 1602 LCD ડિસ્પ્લે (વૈકલ્પિક) ચલાવે છે, આ સોફ્ટ કન્ફિગરેબલ છે અને ત્યાં ઘણા બેકપેક ઉપલબ્ધ છે જેની પિન ગોઠવણીઓ બદલાય છે.
#endif

પગલું 7. કમ્પાઈલ કરો અને બોર્ડ પર અપલોડ કરો.

હવે તમે બોર્ડ કોમ્બો રૂપરેખાંકિત કર્યો છે જેનો તમે ઉપયોગ કરવા માંગો છો, તમે પ્રોજેક્ટને કમ્પાઇલ કરી શકો છો. જો તમે 4×4 મેટ્રિક્સ કીપેડ અને LCD નો ઉપયોગ કરવાનો ઇરાદો ધરાવતા નથી, તો કોઈ વાંધો નથી, તેમની વ્યાખ્યામાં રહેવા દો કારણ કે સોફ્ટવેર તેમને ગોઠવવાની અપેક્ષા રાખે છે. તેમના વિના વાઇફાઇ પર સિસ્ટમ સારી રીતે કામ કરશે.
IDE પર, ટિક સિમ્બોલ (ચકાસણી) વાસ્તવમાં "કમ્પાઇલ" છે. આને ક્લિક કરો અને તમે જોશો કે વિવિધ સંદેશાઓ દેખાય છે (જો તમે વર્બોઝ કમ્પાઇલેશન સક્ષમ કર્યું હોય) કારણ કે સિસ્ટમ વિવિધ લાઇબ્રેરીઓનું સંકલન કરે છે અને તે બધાને એકસાથે લિંક કરે છે. જો બધું બરાબર કામ કરે છે, અને જો તમે ઉપરના તમામ પગલાંને બરાબર અનુસર્યા હોય, તો તમારે સફળતાનો સંદેશ દેખાશે. તમે હવે જમણું-તીર (અપલોડ) બટન દબાવવા માટે તૈયાર છો, પરંતુ તમે આ કરો તે પહેલાં, તપાસો કે તમે ટૂલ્સ મેનૂ હેઠળ બોર્ડ માટે સાચો COM પોર્ટ પસંદ કર્યો છે.
સફળ અપલોડ કર્યા પછી (સારી ગુણવત્તાવાળી USB કેબલનો ઉપયોગ કરો) તમારે પણ આનો ઉપયોગ કરવાની જરૂર છે ESP8266 સ્કેચ ડેટા મેનૂ લોડ કરો ટૂલ્સ હેઠળનો વિકલ્પ. આ ડેટા ફોલ્ડરની સામગ્રીને ઉપકરણ પર મૂકશે (તમામ HTML પૃષ્ઠો).
તમારું થઈ ગયું. સીરીયલ મોનિટર ખોલો, રીસેટ બટનને ક્લિક કરો અને તમારે ઉપકરણ બુટ જોવું જોઈએ અને I2C ઉપકરણો માટે સ્કેન કરવું જોઈએ. હવે તમે તેને Wifi દ્વારા કનેક્ટ કરી શકો છો, અને તે તેના પાવર બોર્ડ (મોટર શિલ્ડ) સુધી વાયર કરવા માટે તૈયાર છે.

દસ્તાવેજો / સંસાધનો

DCC નિયંત્રક માટે ARDUINO IDE સેટ અપ [પીડીએફ] સૂચનાઓ
DCC કંટ્રોલર માટે IDE સેટ અપ, IDE સેટ અપ, DCC કંટ્રોલર માટે સેટ અપ, DCC કંટ્રોલર IDE સેટ અપ, DCC કંટ્રોલર

સંદર્ભો

એક ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. જરૂરી ક્ષેત્રો ચિહ્નિત થયેલ છે *