ಎಲೆಕ್ಟ್ರಾನಿಕ್ ಸಾಧನಗಳ ನಡುವೆ ಡೇಟಾವನ್ನು ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳುವ ಸಾಮಾನ್ಯ ವಿಧಾನಗಳಲ್ಲಿ ಸರಣಿ ಸಂವಹನವು ಒಂದು. ಆದಾಗ್ಯೂ, ದೂರವು ಹೆಚ್ಚಾದಾಗ ಅಥವಾ ಪರಿಸರವು ವಿದ್ಯುತ್ಕಾಂತೀಯ ಹಸ್ತಕ್ಷೇಪವನ್ನು ಹೊಂದಿರುವಾಗ, ಸಂವಹನ ಸಂಕೇತಗಳು ದೋಷಗಳಿಗೆ ಗುರಿಯಾಗಬಹುದು. ಅಲ್ಲಿಯೇ RS485 ಸಂವಹನ ಮಾನದಂಡವು ಕಾರ್ಯರೂಪಕ್ಕೆ ಬರುತ್ತದೆ, ಇದು ದೃಢವಾದ ಮತ್ತು ಪರಿಣಾಮಕಾರಿ ಪರ್ಯಾಯವನ್ನು ನೀಡುತ್ತದೆ. Arduino, ಅದರ ಬಹುಮುಖತೆಯೊಂದಿಗೆ, ಈ ಪ್ರೋಟೋಕಾಲ್ನ ಸಂಪೂರ್ಣ ಪ್ರಯೋಜನವನ್ನು ಸಾಕಷ್ಟು ಸರಳ ರೀತಿಯಲ್ಲಿ ಪಡೆಯಲು ನಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
ಈ ಲೇಖನದಲ್ಲಿ, ಇಂಟಿಗ್ರೇಟೆಡ್ MAX485 ಅನ್ನು ಆಧರಿಸಿ ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಹಲವಾರು ಆರ್ಡುನೊಗಳ ನಡುವೆ RS485 ಸಂವಹನವನ್ನು ಹೇಗೆ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು ಎಂಬುದನ್ನು ನಾವು ನೋಡುತ್ತೇವೆ, ಇದು TTL ಸಂಕೇತಗಳನ್ನು (Arduino ನಿಂದ) RS485 ಗೆ ಪರಿವರ್ತಿಸುವ ಚಿಪ್ ಮತ್ತು ಪ್ರತಿಯಾಗಿ. ಈ ಟ್ಯುಟೋರಿಯಲ್ ಉದ್ದಕ್ಕೂ, Arduino ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ಗಳ ನಡುವೆ ಸಿಂಪ್ಲೆಕ್ಸ್, ಅರ್ಧ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಮತ್ತು ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಸಂವಹನವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುವ ಮೂಲಭೂತ ಪರಿಕಲ್ಪನೆಗಳು ಮತ್ತು ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆಗಳನ್ನು ನಾವು ಒಳಗೊಳ್ಳುತ್ತೇವೆ ಮತ್ತು ಒಂದೇ ಸಾಧನದಲ್ಲಿ ಬಹು ಸಾಧನಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಈ ಸಂವಹನ ವ್ಯವಸ್ಥೆಯನ್ನು ನೀವು ಹೇಗೆ ವಿಸ್ತರಿಸಬಹುದು ಎಂಬುದನ್ನು ವಿವರಿಸುತ್ತೇವೆ. RS485 ಬಸ್.
RS485 ಎಂದರೇನು?
RS485 ಉದ್ಯಮದಲ್ಲಿ ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲಾಗುವ ಸಂವಹನ ಮಾನದಂಡವಾಗಿದೆ, ಅದರ ಹೆಸರುವಾಸಿಯಾಗಿದೆ ದೃ ur ತೆ ಮತ್ತು ಅದನ್ನು ತಡೆದುಕೊಳ್ಳುವ ಸಾಮರ್ಥ್ಯ ಬಹು ದೂರ ಪ್ರಸರಣ, ಗದ್ದಲದ ಕೈಗಾರಿಕಾ ಪರಿಸರದಲ್ಲಿಯೂ ಸಹ. RS232 ನಂತಹ ಇತರ ರೀತಿಯ ಸರಣಿ ಸಂವಹನಕ್ಕಿಂತ ಭಿನ್ನವಾಗಿ, RS485 ಒಂದೇ ಬಸ್ನಲ್ಲಿ ಅನೇಕ ಸಾಧನಗಳನ್ನು ಸಂಪರ್ಕಿಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಇದು ಕೈಗಾರಿಕಾ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಮತ್ತು ನಿಯಂತ್ರಣ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ.
ಈ ಪ್ರೋಟೋಕಾಲ್ ವಿದ್ಯುತ್ಕಾಂತೀಯ ಶಬ್ದಕ್ಕೆ ನಿರೋಧಕವಾಗಿದೆ, ಏಕೆಂದರೆ ಇದು a ಅನ್ನು ಬಳಸುತ್ತದೆ ಡಿಫರೆನ್ಷಿಯಲ್ ಸಿಗ್ನಲಿಂಗ್ ಸಿಸ್ಟಮ್, ಅಂದರೆ ಡೇಟಾವನ್ನು ಎರಡು ತಂತಿಗಳ ಮೂಲಕ ಕಳುಹಿಸಲಾಗುತ್ತದೆ, A ಮತ್ತು B, ಇದು ವೋಲ್ಟೇಜ್ನಲ್ಲಿ ವಿರುದ್ಧ ಆವೃತ್ತಿಯಾಗಿದೆ. ಇದು ಕೇಬಲ್ಗಳಲ್ಲಿ ಯಾವುದೇ ಶಬ್ದವನ್ನು ಸುಲಭವಾಗಿ ರದ್ದುಗೊಳಿಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಸಿಗ್ನಲ್ ಸಮಗ್ರತೆಯನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ.
RS485 ನ ಮುಖ್ಯ ಅನುಕೂಲವೆಂದರೆ ಅದು 1200 ಮೀಟರ್ ವರೆಗಿನ ದೂರವನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ ಮತ್ತು ಕಡಿಮೆ ದೂರದಲ್ಲಿ 35 Mbps ವರೆಗೆ ವೇಗವನ್ನು ನೀಡುತ್ತದೆ, ಇದು ಉದ್ದವಾದ ಕೇಬಲ್ ಹಾಕುವ ಅಗತ್ಯವಿರುವ ಪರಿಸರದಲ್ಲಿ ಕೈಗಾರಿಕಾ ಮತ್ತು ನಿಯಂತ್ರಣ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಆದರ್ಶ ಪ್ರೋಟೋಕಾಲ್ ಮಾಡುತ್ತದೆ.
RS485 ಸಂವಹನ ವಿಧಾನಗಳು

RS485 ಸಂವಹನದಲ್ಲಿ, ನಾವು ಸಿಸ್ಟಮ್ ಅನ್ನು ಮೂರು ವಿಭಿನ್ನ ರೀತಿಯಲ್ಲಿ ಕಾನ್ಫಿಗರ್ ಮಾಡಬಹುದು: ಸಿಂಪ್ಲೆಕ್ಸ್, ಅರ್ಧ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಮತ್ತು ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್. ಪ್ರತಿಯೊಂದಕ್ಕೂ ತನ್ನದೇ ಆದ ವಿಶೇಷತೆಗಳಿವೆ ಮತ್ತು ಯೋಜನೆಯ ಅಗತ್ಯತೆಗಳ ಪ್ರಕಾರ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ.
ಸಿಂಪ್ಲೆಕ್ಸ್ ಸಂವಹನ
ಸಿಂಪ್ಲೆಕ್ಸ್ ಮೋಡ್ನಲ್ಲಿ, ಸಂವಹನವು ಒಂದು ದಿಕ್ಕಿನಲ್ಲಿ ಮಾತ್ರ ಹೋಗುತ್ತದೆ, ಅಂದರೆ, ಒಂದು ಸಾಧನವು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಮತ್ತು ಇನ್ನೊಂದು ಹಾಗೆ ಗ್ರಾಹಕ. ಪ್ರತಿಕ್ರಿಯೆಯ ಅಗತ್ಯವಿಲ್ಲದೆ ನೀವು ಡೇಟಾವನ್ನು ಕಳುಹಿಸಲು ಅಥವಾ ಸ್ವೀಕರಿಸಲು ಬಯಸುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ಇದು ಉಪಯುಕ್ತವಾಗಿದೆ.
ಉದಾಹರಣೆಗೆ, Arduino ಸಂವೇದಕ ಮೌಲ್ಯವನ್ನು ಓದುವ ಮತ್ತು ಅದನ್ನು ಸರಳವಾಗಿ ಸ್ವೀಕರಿಸುವ ಮತ್ತೊಂದು ಸಾಧನಕ್ಕೆ ಕಳುಹಿಸುವ ವ್ಯವಸ್ಥೆಯನ್ನು ನಾವು ಹೊಂದಿಸಬಹುದು. ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಒಂದು ದಿಕ್ಕಿನಲ್ಲಿ ಪ್ರಯಾಣಿಸುವ ಡೇಟಾ ಮಾತ್ರ ಇರುವುದರಿಂದ, ಕೆಲವು ಹೆಚ್ಚುವರಿ ನಿಯಂತ್ರಣ ಅಂಶಗಳನ್ನು ವಿತರಿಸಬಹುದು, ಇದು ವ್ಯವಸ್ಥೆಯನ್ನು ಸರಳ ಮತ್ತು ಹೆಚ್ಚು ಆರ್ಥಿಕವಾಗಿಸುತ್ತದೆ.
ಹಾಫ್-ಡ್ಯೂಪ್ಲೆಕ್ಸ್ ಸಂವಹನ
Arduino ನಲ್ಲಿನ ಹೆಚ್ಚಿನ RS485 ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಅರ್ಧ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಮೋಡ್ನಲ್ಲಿ ಅಳವಡಿಸಲಾಗಿದೆ ಏಕೆಂದರೆ ಇದಕ್ಕೆ ಮಾತ್ರ ಅಗತ್ಯವಿರುತ್ತದೆ ಎರಡು ಎಳೆಗಳು, ಮತ್ತು ಡೇಟಾವನ್ನು ಕಳುಹಿಸಲು ಮತ್ತು ಸ್ವೀಕರಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ, ಆದಾಗ್ಯೂ ಏಕಕಾಲದಲ್ಲಿ ಅಲ್ಲ. ಅಂದರೆ, ಒಂದು ಸಾಧನವು ಡೇಟಾವನ್ನು ಕಳುಹಿಸುತ್ತಿದ್ದರೆ, ಇತರ ಸಾಧನಗಳು ಸ್ವಾಗತ ಮೋಡ್ನಲ್ಲಿರಬೇಕು ಮತ್ತು ಪ್ರತಿಯಾಗಿ.
ಪ್ರಸರಣ ಮತ್ತು ಸ್ವೀಕರಿಸುವ ವಿಧಾನಗಳ ನಡುವೆ ಬದಲಾಯಿಸಲು, ಬಳಸಿ ಹೆಚ್ಚುವರಿ ಪಿನ್ಗಳು (RE/DE) MAX485 ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ, ಸಾಧನವು ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ಕಳುಹಿಸಬೇಕೆ ಅಥವಾ ಸ್ವೀಕರಿಸಬೇಕೆ ಎಂದು ನಿರ್ಧರಿಸಲು ಕೋಡ್ನಿಂದ ನೀವು ನಿಯಂತ್ರಿಸುತ್ತೀರಿ.
ನೀವು ಒಂದೇ ಬಸ್ನಲ್ಲಿ ಅನೇಕ ಸಾಧನಗಳನ್ನು ಹೊಂದಿದ್ದರೆ ಅದು ಪರಸ್ಪರ ಸಂವಹನ ನಡೆಸಬೇಕಾದರೆ ಈ ಮೋಡ್ ವಿಶೇಷವಾಗಿ ಉಪಯುಕ್ತವಾಗಿದೆ, ಆದರೆ ಏಕಕಾಲದಲ್ಲಿ ಅಲ್ಲ.
ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಸಂವಹನ
ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಮೋಡ್ನಲ್ಲಿ, ಸಾಧನಗಳು ಒಂದೇ ಸಮಯದಲ್ಲಿ ಡೇಟಾವನ್ನು ಕಳುಹಿಸಬಹುದು ಮತ್ತು ಸ್ವೀಕರಿಸಬಹುದು. ಆದಾಗ್ಯೂ, RS485 ನಲ್ಲಿ ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು, ಎರಡು ಜೋಡಿ ತಿರುಚಿದ ತಂತಿಗಳು, ಇದು ವೈರಿಂಗ್ನ ವೆಚ್ಚ ಮತ್ತು ಸಂಕೀರ್ಣತೆಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ. ಹೆಚ್ಚುವರಿಯಾಗಿ, ಪ್ರಸಾರವನ್ನು ನಿರ್ವಹಿಸಲು ಮತ್ತು ಪ್ರತ್ಯೇಕವಾಗಿ ಚಾನಲ್ಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ಪ್ರತಿ ಸಾಧನಕ್ಕೆ ಎರಡು MAX485 ಮಾಡ್ಯೂಲ್ಗಳ ಅಗತ್ಯವಿದೆ.
Arduino ನೊಂದಿಗೆ RS485 ಸಂವಹನಕ್ಕೆ ಅಗತ್ಯವಿರುವ ಘಟಕಗಳು
Arduino ನಲ್ಲಿ RS485 ಸಂವಹನ ವ್ಯವಸ್ಥೆಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು, ನಿಮಗೆ ಈ ಕೆಳಗಿನ ಘಟಕಗಳು ಬೇಕಾಗುತ್ತವೆ:
- ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನ ಆರ್ಡುನೋಸ್: ಯಾವುದೇ Arduino ಮಾದರಿಯು ಮಾಡುತ್ತದೆ, ಆದರೆ ಈ ಟ್ಯುಟೋರಿಯಲ್ ನಲ್ಲಿ ನಾವು ಬಳಸುತ್ತೇವೆ Arduino UNO ಮತ್ತು Arduino MEGA ಉದಾಹರಣೆಗಳು.
- MAX485 ಮಾಡ್ಯೂಲ್ಗಳು: ಈ ಮಾಡ್ಯೂಲ್ಗಳು TTL ಸಿಗ್ನಲ್ಗಳನ್ನು Arduino ನಿಂದ RS485 ಗೆ ಮತ್ತು ಪ್ರತಿಯಾಗಿ ಪರಿವರ್ತಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಅಲೈಕ್ಸ್ಪ್ರೆಸ್ ಅಥವಾ ಇಬೇಯಂತಹ ಅಂಗಡಿಗಳಲ್ಲಿ ಅವು ತುಂಬಾ ಅಗ್ಗವಾಗಿವೆ ಮತ್ತು ಸುಲಭವಾಗಿ ಕಂಡುಬರುತ್ತವೆ.
- ಮುಕ್ತಾಯ ನಿರೋಧಕಗಳು: ಸಿಗ್ನಲ್ನಲ್ಲಿ ಪ್ರತಿಬಿಂಬವನ್ನು ತಪ್ಪಿಸಲು 120 ಓಮ್ಗಳ ನಡುವಿನ ಪ್ರತಿರೋಧಕವನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಬಸ್ನ ಪ್ರತಿ ತುದಿಯಲ್ಲಿ ಇರಿಸಲಾಗುತ್ತದೆ. ಕಡಿಮೆ ದೂರದಲ್ಲಿ, ಅವುಗಳಿಲ್ಲದೆ ಮಾಡಲು ಸಾಧ್ಯವಿದೆ, ಆದರೆ ದೀರ್ಘವಾದ ಅನುಸ್ಥಾಪನೆಗಳಲ್ಲಿ ಅವರು ಸಿಗ್ನಲ್ನ ಸಮಗ್ರತೆಯನ್ನು ಕಾಪಾಡಿಕೊಳ್ಳಲು ಅವಶ್ಯಕ.
- ತಿರುಚಿದ ಜೋಡಿ ಕೇಬಲ್ಗಳು: ವಿಶೇಷವಾಗಿ ಗದ್ದಲದ ಕೈಗಾರಿಕಾ ಪರಿಸರದಲ್ಲಿ ವಿದ್ಯುತ್ಕಾಂತೀಯ ಹಸ್ತಕ್ಷೇಪವನ್ನು ಕಡಿಮೆ ಮಾಡಲು ತಿರುಚಿದ ಜೋಡಿ ಕೇಬಲ್ಗಳನ್ನು ಬಳಸಲು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ.
ಸಾಮಾನ್ಯ ಸಂಪರ್ಕ ರೇಖಾಚಿತ್ರ
MAX485 ಮಾಡ್ಯೂಲ್ಗಳನ್ನು ಸಂಪರ್ಕಿಸಿ Arduino ಗೆ ತುಂಬಾ ಸರಳವಾಗಿದೆ. ಅತ್ಯಂತ ಪ್ರಮುಖವಾದ ಪಿನ್ಗಳು A ಮತ್ತು B, ಇದು RS485 ಬಸ್ ಲೈನ್ಗಳಿಗೆ ಅನುಗುಣವಾಗಿರುತ್ತದೆ. ಈ ಪಿನ್ಗಳನ್ನು ಬಸ್ನಲ್ಲಿರುವ ಎಲ್ಲಾ ಸಾಧನಗಳಿಗೆ ಸಂಪರ್ಕಿಸಬೇಕು. ಹೆಚ್ಚುವರಿಯಾಗಿ, ಮಾಡ್ಯೂಲ್ ರಿಸೀವರ್ ಅಥವಾ ಟ್ರಾನ್ಸ್ಮಿಟರ್ ಮೋಡ್ನಲ್ಲಿದೆಯೇ ಎಂಬುದನ್ನು ನಿಯಂತ್ರಿಸುವ RE ಮತ್ತು DE ಪಿನ್ಗಳನ್ನು ಹೊಂದಿದೆ.
ಸಾಮಾನ್ಯವಾಗಿ, ಮಾಡ್ಯೂಲ್ಗಳನ್ನು Arduino ಗೆ ಸಂಪರ್ಕಿಸುವುದು ಈ ಕೆಳಗಿನಂತೆ ಮಾಡಲಾಗುತ್ತದೆ:
- ಮಾಡ್ಯೂಲ್ನ ವಿಸಿಸಿ ಮತ್ತು ಜಿಎನ್ಡಿ ಆರ್ಡುನೊದಲ್ಲಿ ವಿಸಿಸಿ ಮತ್ತು ಜಿಎನ್ಡಿಗೆ ಸಂಪರ್ಕಿಸುತ್ತದೆ.
- ಮಾಡ್ಯೂಲ್ ಹೊರಸೂಸುವಿಕೆಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕಾದರೆ ಮಾಡ್ಯೂಲ್ನ DI (ಡೇಟಾ ಇನ್ಪುಟ್) Arduino ನ TX ಪಿನ್ಗೆ ಸಂಪರ್ಕಿಸುತ್ತದೆ.
- ಮಾಡ್ಯೂಲ್ ರಿಸೀವರ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕಾದರೆ ಮಾಡ್ಯೂಲ್ನ ಆರ್ಒ (ರಿಸೀವರ್ ಔಟ್ಪುಟ್) ಆರ್ಡುನೊದ ಆರ್ಎಕ್ಸ್ ಪಿನ್ಗೆ ಸಂಪರ್ಕಿಸುತ್ತದೆ.
- ಪ್ರಸರಣ ಮತ್ತು ಸ್ವೀಕರಿಸುವ ವಿಧಾನಗಳ ನಡುವೆ ಬದಲಾಯಿಸಲು DE ಮತ್ತು RE ಅನ್ನು Arduino ಡಿಜಿಟಲ್ ಪಿನ್ನಿಂದ ನಿಯಂತ್ರಿಸಬೇಕು.
ಕಳುಹಿಸುವವರು ಅಥವಾ ಸ್ವೀಕರಿಸುವವರಂತೆ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ನಿಮಗೆ ಮಾಡ್ಯೂಲ್ ಮಾತ್ರ ಅಗತ್ಯವಿದ್ದರೆ, ನೀವು RE ಮತ್ತು DE ಅನ್ನು ನೇರವಾಗಿ ಹೆಚ್ಚಿನ ಅಥವಾ ಕಡಿಮೆಗೆ ಸಂಪರ್ಕಿಸಬಹುದು. ಆದಾಗ್ಯೂ, ಸಾಧನವು ರವಾನಿಸುವ ಮತ್ತು ಸ್ವೀಕರಿಸುವ ನಡುವೆ ಬದಲಾಯಿಸಬೇಕಾದ ಹೆಚ್ಚು ಸಂಕೀರ್ಣ ಸಂವಹನಗಳಿಗಾಗಿ, ಸಾಫ್ಟ್ವೇರ್ನಿಂದ ಈ ಪಿನ್ಗಳನ್ನು ನಿಯಂತ್ರಿಸುವುದು ಉತ್ತಮವಾಗಿದೆ.
RS485 ಸಂವಹನಕ್ಕಾಗಿ ಕೋಡ್ ಉದಾಹರಣೆಗಳು
Arduino ನಲ್ಲಿ RS485 ನೊಂದಿಗೆ ವಿಭಿನ್ನ ಸಂವಹನ ಸಂರಚನೆಗಳನ್ನು ಒಳಗೊಂಡ ಹಲವಾರು ಉದಾಹರಣೆಗಳನ್ನು ಕೆಳಗೆ ನೀಡಲಾಗಿದೆ.
ಸಿಂಪ್ಲೆಕ್ಸ್ ಸಂವಹನ
ವಿತರಕರ ಕೋಡ್
ನಾವು ಕೇವಲ ಒಬ್ಬ ಕಳುಹಿಸುವವರು ಮತ್ತು ಒಬ್ಬ ರಿಸೀವರ್ ಅನ್ನು ಹೊಂದಿರುವ ಮೂಲಭೂತ ಸಿಂಪ್ಲೆಕ್ಸ್ ಸಿಸ್ಟಮ್ಗಾಗಿ, ಕಳುಹಿಸುವವರ ಕೋಡ್ ಈ ರೀತಿ ಕಾಣಿಸಬಹುದು:
void setup() { Serial.begin(9600); } void loop() { Serial.write(analogRead(0)); delay(500); }
ರಿಸೀವರ್ ಕೋಡ್
ರಿಸೀವರ್ ಸೀರಿಯಲ್ ಪೋರ್ಟ್ ಮೂಲಕ ಬರುವ ಡೇಟಾವನ್ನು ಸರಳವಾಗಿ ಓದುತ್ತದೆ:
void setup() { Serial.begin(9600); } void loop() { if (Serial.available()) { int data = Serial.read(); Serial.println(data); } }
ಹಾಫ್-ಡ್ಯೂಪ್ಲೆಕ್ಸ್ ಸಂವಹನ
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, ಡೇಟಾವನ್ನು ಕಳುಹಿಸುವ ಮತ್ತು ಸ್ವೀಕರಿಸುವ ನಡುವೆ ಸಾಧನಗಳು ಪರ್ಯಾಯವಾಗಿ ಅರ್ಧ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ವ್ಯವಸ್ಥೆಯನ್ನು ನಾವು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತೇವೆ.
ಶಿಕ್ಷಕರ ಕೋಡ್
const int reDePin = 2; void setup() { pinMode(reDePin, OUTPUT); Serial.begin(9600); } void loop() { digitalWrite(reDePin, HIGH); Serial.write('H'); delay(100); digitalWrite(reDePin, LOW); if (Serial.available()) { int data = Serial.read(); Serial.println(data); } }
ಸ್ಲೇವ್ ಕೋಡ್
const int reDePin = 2; void setup() { pinMode(reDePin, OUTPUT); Serial.begin(9600); } void loop() { digitalWrite(reDePin, LOW); if (Serial.available()) { int data = Serial.read(); delay(100); digitalWrite(reDePin, HIGH); Serial.write(data + 1); } }
ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಸಂವಹನ
ಪೂರ್ಣ-ಡ್ಯುಪ್ಲೆಕ್ಸ್ ಸಂವಹನವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು, ಪ್ರತಿ Arduino ಗೆ ಎರಡು MAX485 ಮಾಡ್ಯೂಲ್ಗಳು ಅಗತ್ಯವಿದೆ. ಪ್ರತಿಯೊಂದು ಜೋಡಿ ಮಾಡ್ಯೂಲ್ಗಳು ಒಂದು ಡೇಟಾ ಲೈನ್ ಅನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ: ಒಂದು ರವಾನಿಸಲು ಮತ್ತು ಇನ್ನೊಂದು ಸ್ವೀಕರಿಸಲು.
ಕೋಡ್ ಹಿಂದಿನ ಉದಾಹರಣೆಗಳಂತೆಯೇ ಇರುತ್ತದೆ, ಆದರೆ ಈ ಸಂದರ್ಭದಲ್ಲಿ ಎರಡೂ ಸಾಧನಗಳು ಯಾವಾಗಲೂ ಏಕಕಾಲದಲ್ಲಿ ರವಾನಿಸುತ್ತವೆ ಮತ್ತು ಸ್ವೀಕರಿಸುತ್ತವೆ.
RS485 ನಲ್ಲಿ ಬಹು ಸಾಧನಗಳಿಗೆ ವಿಸ್ತರಣೆ
RS485 ಒಂದೇ ಬಸ್ನಲ್ಲಿ 32 ಸಾಧನಗಳನ್ನು ಸಂಪರ್ಕಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ವಿಶೇಷ ಸಂದರ್ಭಗಳಲ್ಲಿ ಇದು ಹೆಚ್ಚಿನದನ್ನು ತಲುಪಬಹುದು. ಬಹು ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ಗಳು ಅಥವಾ ಸಾಧನಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಯೋಜನೆಗಳಿಗೆ ಇದು ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆಯಾಗಿದೆ. ನೆಟ್ವರ್ಕ್ನಲ್ಲಿ ಪ್ರತಿಯೊಂದನ್ನು ಗುರುತಿಸಲು, ಪ್ರತಿ ಸಾಧನಕ್ಕೆ ವಿಳಾಸ ಅಥವಾ ಐಡಿಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದು ಸಾಮಾನ್ಯವಾಗಿದೆ.
ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಮಾಸ್ಟರ್ ಅವರು ಸಂವಹನ ಮಾಡಲು ಬಯಸುವ ಸಾಧನದ ವಿಳಾಸದೊಂದಿಗೆ ಸಂದೇಶವನ್ನು ಕಳುಹಿಸುತ್ತಾರೆ ಮತ್ತು ಆ ಸಾಧನವು ಸಂದೇಶವನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲು ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ನೀಡುವ ಉಸ್ತುವಾರಿ ವಹಿಸುತ್ತದೆ.
ಇದನ್ನು ಬಳಸುವ ಸಾಧ್ಯತೆಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ ಹೆಚ್ಚು ಸಂಕೀರ್ಣ ಪ್ರೋಟೋಕಾಲ್ಗಳು ಉದಾಹರಣೆಗೆ MODBUS, ಇದು ಉದ್ಯಮದಲ್ಲಿ ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿ ಮತ್ತು ಸುರಕ್ಷಿತ ನೆಟ್ವರ್ಕ್ಗಳನ್ನು ರಚಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
ಹೋಮ್ ಪ್ರಾಜೆಕ್ಟ್ಗಳು ಅಥವಾ ಕಡಿಮೆ ಬೇಡಿಕೆಯಿರುವ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗಾಗಿ, ನೀವು ಪ್ರತಿ Arduino ಗೆ ಗುರುತಿಸುವಿಕೆಯನ್ನು ನಿಯೋಜಿಸಬಹುದು ಮತ್ತು ಅವುಗಳಿಗೆ ಉದ್ದೇಶಿಸಿರುವ ಸಂದೇಶಗಳಿಗೆ ಮಾತ್ರ ಪ್ರತಿಕ್ರಿಯಿಸುವಂತೆ ಮಾಡಬಹುದು.