ãã®èšäºã§ã¯ãROS MikroTikæ©èœã䜿çšããŠãç¹å¥ãªãã€ã¯ãããã°ã©ã ïŒROSã¹ã¯ãªããé¢æ°ïŒãäœæããããšã«ããããããã¯ãŒã¯äžã®ãããã®ããã€ã¹ã®çµ±åãéããŠçŽæ¥httpãªã¯ãšã¹ããåãå ¥ããKernelChipã®Laurentã€ã³ã¿ãŒãããã¢ãžã¥ãŒã«ã«ã³ãã³ããçºè¡ããå¯èœæ§ã«ã€ããŠèª¬æããŸãã
Laurent2ã¢ãžã¥ãŒã«
Laurent2ã¢ãžã¥ãŒã«ã«ã¯ãããŒãäžãã«ããªãè±å¯ãªãã¹ãããã€ã³ãããããããŒãã®ç«¯ã«ãã端åãããã¯ãããã§äœ¿çšã§ããŸãã ã¢ãžã¥ãŒã«ã«å«ãŸãããã®ïŒ
- å 絶çžãã£ã¹ã¯ãªãŒãå ¥åã©ã€ã³ïŒ6åïŒ
- 匷åãªåºåãã£ã¹ã¯ãªãŒãã©ã€ã³ïŒ12åïŒ
- ã¢ããã°-ããžã¿ã«ã³ã³ããŒã¿ãŒïŒé»å§ã®æž¬å®ãšåçš®ã»ã³ãµãŒã®æ¥ç¶çšïŒ-2
- ãã«ã¹ã«ãŠã³ã¿ãŒïŒ4åïŒ
- ããŸããŸãªè² è·ãåãæ¿ããããã®é«é»å§é»ç£ãªã¬ãŒïŒ4åïŒ
- PWMåºå
- 枩床ã»ã³ãµãŒKTS-18B20ãæ¥ç¶ããããã®å ¥å
- RS-232ã·ãªã¢ã«ããŒã
ããŒã©ã³112
Laurent112ã¯ããæ§ããã«èŠããåè¿°ã®Laurent2ã®ããŸããŸãªæ©èœãåããŠããŸãããã家åºçšé»å補åã®æšæºè² è·ãåãæ¿ããããšãã§ãããè£åã12ãªã¬ãŒãæèŒããŠããŸãã
Mikrotik Routerã§ãããã®ã¢ãžã¥ãŒã«ããµããŒãããããã«ã次ã®ã¹ã¯ãªããé¢æ°ãäœæããŸããã
FuncLaurent2REL -Laurent2ã¢ãžã¥ãŒã«ãªã¬ãŒæ©èœ
FuncLaurent2OUT-ã¢ãžã¥ãŒã«ã®ã¢ãŠãã©ã€ã³ãæäœããæ©èœ
FuncLaurent2PWM -PWMä¿¡å·ã®é»åèšå®
FuncLaurent2Status -Laurent2ã¹ããŒã¿ã¹ãªã¯ãšã¹ã
FuncLaurent112REL -Laurent112ã¢ãžã¥ãŒã«ã®ãªã¬ãŒãæäœããæ©èœ
FuncLaurent112Status -Laurent112ã¹ããŒã¿ã¹ãªã¯ãšã¹ã
FuncPing-ãã¹ãŠã®æ©èœã§äœ¿çšããããpingãžã®IPã¢ãã¬ã¹å¿çãèŠæ±ãããµãŒãã¹æ©èœ
FuncMail-ã©ã³ãã ã¡ãã»ãŒãžãé»åã¡ãŒã«ã«éä¿¡ããè¿œå æ©èœ
䜿ããããããããã«ããªã¹ããããé¢æ°ã¯ããããã®åŒã³åºãã®ãŠãŒãã£ãªãã£ããã³ã¹ã¯ãªããã®äŸãšå ±ã«ãåäžã®ãã¡ã€ã«Laurent.rscã«çµåãããã¿ãŒããã«ã³ãã³ãã§ã«ãŒã¿ãŒOSã«ã€ã³ããŒãã§ããŸãã
/import file=Laurent.rsc
ïŒã€ã³ããŒãæéã¯ãMikrotikã«ãŒã¿ãŒã¢ãã«ã®ããã©ãŒãã³ã¹ã«ãã£ãŠ20ã30ç§ãã1åãããå ŽåããããŸãïŒã
Laurentã¹ã¯ãªããã©ã€ãã©ãªãã¡ã€ã«ãç ŽæããŠãããããªããžããªãžã®ã¹ã¯ãªããã®ã€ã³ããŒããæ£ããå®äºããŠããå ŽåãWINBOXãŠãŒãã£ãªãã£ã®ã³ã³ãœãŒã«ã«ãã¹ã¯ãªãããã¡ã€ã«ãããŒããããæ£åžžã«å®è¡ãããŸããããšããã¡ãã»ãŒãžã衚瀺ãããŸãã
åæã«ãæ¢åã®ã¹ã¯ãªããã«å ããŠãã«ãŒã¿ãŒã®ãªããžããªã«æ¬¡ã®ããã«è¡šç€ºãããŸãã
ãããã¯ããLaurentããããŒã¯ãããææè -äœæè ïŒææè ïŒã®ã©ãã«ã§ç°¡åã«åºå¥ã§ããŸãã
Laurenté¢æ°ã¯ã次ã®ããã«ä»ã®ã¹ã¯ãªããããåŒã³åºãããšãã§ããŸãã
æåã«ãå¿ èŠãªæ©èœãã°ããŒãã«å€æ°ã®åœ¢åŒã§ã«ãŒã¿ãŒãªããžããªå€æ°ã®ç°å¢ã«é 眮ããã¹ã¯ãªãããå®è¡ããå¿ èŠããããŸãã Laurent2ã¢ãžã¥ãŒã«ã®å Žåããããã¯Func_Laurent2_library ã Func_Pingããã³Func_Mailã¹ã¯ãªããã§ã ïŒãªãã·ã§ã³ã§ããã䟿å©ãªãã¡ãŒã«ãæ©èœïŒã Laurent112ã®å Žåããããã¯Func_Laurent112_REL ã Func_Laurent112_Status ã Func_Pingãããã³Func_Mailã¹ã¯ãªããã§ãã
ãããã®ã¹ã¯ãªããã¯ããããã®æ©èœãå¿ èŠãªãšãã«1åå®è¡ã§ããŸãã äžå®ã®äœæ¥ã§äœ¿çšãããå Žåãã«ãŒã¿ãŒãã«ãŒã¿ãŒOSã¹ã±ãžã¥ãŒã©ãŒïŒ /ã·ã¹ãã ã¹ã±ãžã¥ãŒã©ãŒ ïŒããèµ·åãããšãã«ãããã«ã¹ã¯ãªãããèµ·åãããšäŸ¿å©ã§ãã ãŸãã¯ãäž¡æ¹ã®ã¢ãžã¥ãŒã«ã®ãã¹ãŠã®æ©èœãäžåºŠã«ã€ã³ã¹ããŒã«ããããã«å¿ èŠãªãã¹ãŠãè¡ãç¹å¥ãªã¹ã¯ãªããLaurent_START.rscã®èµ·åã䜿çšã§ããŸãã ãã®ã¹ã¯ãªãããWINBOXãŸãã¯ã³ã³ãœãŒã«ããã³ãã³ãã§å®è¡ããåŸ
ã©ã€ãã©ãªãŒé¢æ°ã¯ããªããžããªãŒå€æ°ãšJagaã¡ããã£ãŒé³ã®äžéšã«å²ãŸããŠããŸãã/system script run Laurent_START.rsc
ã©ã€ãã©ãªã®æ£åžžãªèµ·åã«é¢ããã¡ãã»ãŒãžãã«ãŒã¿ãŒã®ãã°ã«éä¿¡ãããŸãã
åŸã§ãã€ã³ã¹ããŒã«ãã¡ã€ã«ãç·šéããŠãå¿ èŠãªæ©èœã®ã¿ãç°å¢ïŒãããããLaurentããŒãã®ã¢ãã«ïŒã«é 眮ãããããã«ããããLaurent_START.rscãã¡ã€ã«ã®ããã¹ãã®äŸã«åŸã£ãŠãèªåã§åŒã³åºãããšãã§ããŸãã
ããã§ãå€æ°ã«å²ãŸããç¶æ ã§ãRouterOSã§ã°ããŒãã«å€æ°ïŒïŒglobalïŒãšããŠå®çŸ©ãããé¢æ°ã衚瀺ãããããã«äœ¿çšã§ããŸãïŒ
é¢æ°ãå®çŸ©ããããã¹ã¯ãªãããã«ãŒã¿ãŒã®ã¹ã±ãžã¥ãŒã©ãŒïŒã¹ã±ãžã¥ãŒã«ãããå®è¡çšïŒããŸãã¯åŒã³åºãã¹ã¯ãªããã§ãããã®ã°ããŒãã«åã宣èšããç¹å¥ãªå ŽåïŒDHCPãµãŒããŒã¢ã©ãŒããPPPãããã¡ã€ã«ã¹ã¯ãªãããªã©ïŒã§é¢æ°ãåŒã³åºãããšãã§ããŸãã
äž¡æ¹ã®ã¢ãžã¥ãŒã«ã®ãªã¬ãŒãæäœããLaurent2ã®åºåã©ã€ã³ãšPWMä¿¡å·é»åãèšå®ããæ©èœã¯ãã¢ãžã¥ãŒã«ã®ãä¿è·ãããŠããªããã¢ãŒãã§ã®ã¿æ©èœããããšã«æ³šæããŠãã ããã ã¢ãžã¥ãŒã«ã§ãä¿è·ãã¢ãŒããæå¹ã«ãªã£ãŠããå Žåããããã®httpã³ãã³ãã¯ã察å¿ãããšã©ãŒã¡ãã»ãŒãžãšãšãã«å®è¡ãããŸããïŒä»¥äžãåç §ïŒã ã¢ãžã¥ãŒã«ã®ã¹ããŒã¿ã¹èŠæ±æ©èœã¯ãä¿è·ã¢ãŒããšéä¿è·ã¢ãŒãã®äž¡æ¹ã§æ©èœããŸãã
Laurent2ã¢ãžã¥ãŒã«ã®æ©èœãæ€èšããŠãã ãã
FuncLaurent2REL-Laurent2ãªã¬ãŒã®ãªã³/ãªã/éé¢æ°
ãã®æ©èœã«ãããæå®ããããªã¬ãŒããªã³ã«ãããªã¬ãŒããªãã«ããæå®ãããæéã ããªã¬ãŒããªã»ããããããšãã§ããŸãã
é¢æ°ã®æ§æã¯æ¬¡ã®ãšããã§ãã
[$FuncLaurent2REL Ladr="IP-address" Lport="http-port" Rele="nRele" Action="m" Time="time s"]
ããã§ïŒ
Ladr-äžè¬ã«åãå ¥ããããŠãã圢åŒã®ãããã¯ãŒã¯äžã®Laurent2ã¢ãžã¥ãŒã«ã®IPã¢ãã¬ã¹ã
Lport -http-portã¢ãžã¥ãŒã«ã ãã¹ãŠã®Laurentã¢ãžã¥ãŒã«ã®çŸåšã®ããŒãžã§ã³ã§ã¯ãæšæºã®httpããŒã80ã®ã¿ã䜿çšãããä»»æã®ããŒãã¯æ§æãããŠããŸããã ãããã£ãŠãLportãã©ã¡ãŒã¿ãŒã¯çç¥ã§ããŸãã
Rele - 1ã4ã®ç¯å²ã§é¢æ°ãåç §ãããªã¬ãŒã®çªå·ã
ã¢ã¯ã·ã§ã³ -ãªã¬ãŒã§å®è¡ãããã¢ã¯ã·ã§ã³ã å€ïŒmïŒã¯1ã«ãªããŸããããã¯ããªã¬ãŒããªã³ïŒãªã³ïŒãŸãã¯0ïŒãªãïŒã«ããã®ãšåãã§ãã
æé -ã¢ãžã¥ãŒã«ãã¡ãŒã ãŠã§ã¢[1-255]ã§èš±å¯ãããŠããç¯å²å ã®ãªã¬ãŒã®ã¢ã¯ã·ã§ã³æéïŒç§åäœïŒã æå®ããªãå Žåãã¢ã¯ã·ã§ã³ã¯1åå®è¡ãããŸãã æéã®å€ãæå®ãããŠããå Žåããªã¬ãŒã¯ãåèµ·åããããŸã-ãªã¬ãŒã®ã¹ããŒã¿ã¹ã¯ãã¢ã¯ã·ã§ã³ã®æéç§ã§æå®ãããæéã«å€æŽãããå察ã®ç¶æ ã«æ»ããŸãã
é¢æ°å®è¡ã®çµæã¯ãLansweræååå€æ°ã«è¿ãããšãã§ããŸãïŒããã¯åçŽãªã³ãã³ããšã¯å¯Ÿç §çãªé¢æ°ã®å€ã§ãïŒã
çµæãè¿ãã«ã¯ãå®çŸ©ã®æ§æïŒïŒlocalãŸãã¯ïŒglobalïŒã䜿çšãããã以åã«å®çŸ©ããå€æ°ã«å€ãå²ãåœãŠãïŒïŒsetïŒå¿ èŠããããŸãã次ã«äŸã瀺ããŸãã
:local Lanswer [$FuncLaurent2REL Ladr="IP-address" Lport="http-port" Rele="nRele" Action="m" Time="time s"]
é¢æ°ãæåãããšãLanswerã¯ã DONE ããè¿ããããšã©ãŒã¡ãã»ãŒãžãè¿ããŸãã æ©èœãæåããå Žåã Action =â 1âã®å ŽåãããŒãé³ãè£ åããã«ãŒã¿ãŒã¯çãããŒãé³ã1å鳎ãããŸãã ãªã¬ãŒããªãã«ãªãããå転ãå転ãããšãçãããŒãé³ã2åé£ç¶ããŠé³ŽããŸãã
ãã®é¢æ°ã¯ã次ã®ãšã©ãŒã¡ãã»ãŒãžãè¿ãå ŽåããããŸãã
ã>ãšã©ãŒïŒç¯å²ã®èª€ç®ã-ç¡å¹ãªãªã¬ãŒçªå·ãReleå€æ°ã«æå®ãããŠããå Žåã
ã>ãšã©ãŒïŒreleã¬ãžãŒã ã»ããã®äžäžèŽã-æå®ãããŠããªãããŸãã¯èª€ã£ãŠæå®ãããã¢ã¯ã·ã§ã³ã®å Žåã
ã>ãšã©ãŒïŒæéã®äžäžèŽã-誀ã£ãæéå€ã®å ŽåïŒç¯å²[1-255]以å€ïŒã
ã>ãšã©ãŒïŒããã€ã¹ãå¿çããŸããã-Laurentã®pingã«å¯Ÿããå¿çããªãå Žåã
">ãšã©ãŒïŒã³ãã³ãROS"-URLã³ãã³ãRouterOs /ããŒã«ãã§ããã®å®è¡æã«ãšã©ãŒãçºçããå ŽåïŒLadrã誀ã£ãŠèšå®ãããŠããããpingãããŠããå ŽåããµãŒãã¹/ããŒã«ãã§ããã¯ç¹å®ã®ãŠãŒã¶ãŒMrotikãªã©ã«å°éã§ããŸãã...ïŒ;
ã>ãšã©ãŒïŒããã€ã¹ä¿è·ã-ãããã€ã¹ä¿è·ã¢ãŒãããèšå®ãããŠããŠãã³ãã³ããå®è¡ã§ããªãå Žåã
"> ERRORïŒcommand syntax"-ã³ãã³ãã®æ§æãšã©ãŒïŒ*ãã¹ãŠã®ãšã©ãŒãªãã·ã§ã³ãé€å€ã§ããããã§ã¯ãããŸãããé¢æ°ã®æ§æãæ£ãããªãå Žåãããšãã°Ladrããã³Lport圢åŒãæ£ããæå®ãããŠããããŸã£ãããªãå Žåãã¹ã¯ãªãããããªãŒãºããŸãïŒ
FuncLaurent2RELé¢æ°ã®äŸ
IPã¢ãã¬ã¹192.168.0.101ã®Laurent2ã¢ãžã¥ãŒã«ã®ãªã¬ãŒ1ããªã³ã«ããŠãé¢æ°ã®å¿çãå€æ°ã«è¿ããŸãã
:global FuncLaurent2REL; :local Lanswer [$FuncLaurent2REL Ladr="192.168.0.101" Lport="80" Rele="1" Action="1"]; :if ([:find $Lanswer "DONE"]=0) do={:log warning $Lanswer}
ãã¡ãããåŒçšç¬Šã§ç€ºãããé¢æ°ãã©ã¡ãŒã¿ãŒã®çŽæ¥å€ã®ä»£ããã«ãã«ãŒã¿ãŒOSå€æ°ãä»»æã®ååã§äœ¿çšã§ããŸãã
é¢æ°ã®å¿çãè¿ããã«ããªã¬ãŒçªå·4ã20ç§éå転ããŸãã
:local LaurentIPadr "192.168.10.5" :local LaurentRele 4 :local LTime 20 [$FuncLaurent2REL Ladr=$LaurentIPadr Lport="8021" Rele=$LaurentRele Action="1" Time=$Ltime]
Laurent2ããã³Laurent112é¢æ°ã¯ãLua ROSèšèªã§èš±å¯ãããŠããä»»æã®æ§é ïŒã«ãŒãããã¹ããåå²ãªã©ïŒã«é©çšã§ããŸãã
ã€ãŸãããµã€ã¯ã«ã䜿çšããŠã ããšãã°ãããŒãã®ãã¹ãŠã®ãªã¬ãŒããªã³ã«ã§ããŸãã
:for i from=1 to=4 do={[$FuncLaurent2REL Ladr="192.168.0.101" Lport="80" Rele=$i Action="1"];}
ãŸãã¯ãåæ§ã®æ¹æ³ã§I / Oã©ã€ã³ã§ã°ã«ãŒãæäœãè¡ããŸãã
FuncLaurent2OUT-Laurent2åºååç·ã¹ããŒã¿ã¹èšå®æ©èœ
æ©èœã¯åã®ãã®ãšãŸã£ããåãã§ãã Releãã©ã¡ãŒã¿ãŒãLineãã©ã¡ãŒã¿ãŒã«çœ®ãæããããšãé€ããåããã©ã¡ãŒã¿ãŒããããŸãã1ã12ã®ç¯å²ã®å€ãåãããšãã§ããŸãïŒLaurent2ã«ã¯12ã®åºåè¡ãããããšã«æ³šæããŠãã ããïŒã Action = "1"ãæå®ãããšãã©ã€ã³ã«é«è«çã¬ãã«ãèšå®ãããAction = "0"ãæå®ãããšãäœã«èšå®ãããŸãã æå®ã®æéã®ã©ã€ã³å転ããæéãèšå®ãããšãã«FuncLaurent2RELé¢æ°ãšåæ§ã«æ©èœããŸãã
åºåè¡çªå·12ããé«ã¬ãã«ãã«èšå®ããé¢æ°åŒã³åºãã®äŸïŒ
[$FuncLaurent2OUT Ladr=1"92.168.0.1" Line="12" Action="1"]
FuncLaurent2OUTé¢æ°ã¯ãæåãããšãDONEãå¿çãéä¿¡ããŸãã
ãšã©ãŒã¡ãã»ãŒãžã¯FuncLaurent2RELã«äŒŒãŠããŸãããåºåè¡ãå ±åããŸãã
ã>ãšã©ãŒïŒè¡ç¯å²ã®èª€ç®ã-ç¡å¹ãªè¡çªå·ãLineå€æ°ã§æå®ãããŠããå Žåã
ã>ãšã©ãŒïŒåç·ã¬ãžãŒã ã»ããã®äžäžèŽã-æå®ãããŠããªããã誀ã£ãŠæå®ãããã¢ã¯ã·ã§ã³ã®å Žåã
ã>ãšã©ãŒïŒæéã®äžäžèŽã-誀ã£ãæéå€ã®å ŽåïŒç¯å²[1-255]以å€ïŒã
ã>ãšã©ãŒïŒããã€ã¹ãå¿çããŸããã-Laurentã®pingã«å¯Ÿããå¿çããªãå Žåã
ã>ãšã©ãŒïŒã³ãã³ãROSã-URLã³ãã³ãRouterOs /ããŒã«ãã§ããã®å®è¡æã«ãšã©ãŒãçºçããå Žåã
ã>ãšã©ãŒïŒããã€ã¹ä¿è·ã-ãããã€ã¹ä¿è·ã¢ãŒãããèšå®ãããŠããŠãã³ãã³ããå®è¡ã§ããªãå Žåã
ã>ãšã©ãŒïŒã³ãã³ãæ§æã-ã³ãã³ãã¬ã³ãŒãã®æ§æãšã©ãŒã
FuncLaurent2PWM-PWMä¿¡å·é»å調æŽæ©èœ
ãã®é¢æ°ã¯ãPWMåºåã®ä¿¡å·é»åãèšå®ããŸããããã䜿çšããŠãããšãã°ãç §æã®æããããŸãã¯ãã®åºåã«æ¥ç¶ãããŠãããã¡ã³ã®é床ã調æŽã§ããŸãã
é¢æ°ã®æ§æã¯æ¬¡ã®ãšããã§ãã
[$FuncLaurent2PWM Ladr="IP-address" Lport="http-port" PW="n(%)"]
PWãã©ã¡ãŒã¿ãŒã§ã¯ãPWMä¿¡å·ã®é»åãããŒã»ã³ãã§ïŒïŒ èšå·ãæå®ããã«ïŒãããã0ã100ã®ç¯å²ã§æå®ããå¿ èŠããããŸãã
PWãã©ã¡ãŒã¿ãŒãæ£ããæå®ãããŠããªãå Žåããšã©ãŒã> ERRORïŒPWM range mismathããçæãããæ®ãã®ãšã©ãŒã¡ãã»ãŒãžã¯FuncLaurent2RELããã³FuncLaurent2OUTã®ã¡ãã»ãŒãžãšåæ§ã§ãã
FuncLaurent2Status-Laurent2ã¢ãžã¥ãŒã«ã¹ããŒã¿ã¹ãªã¯ãšã¹ãé¢æ°
ãã®é¢æ°ã¯ãåãã©ã¡ãŒã¿ãŒïŒãã¹ãŠã®ãªã¬ãŒããã¹ãŠã®å ¥åã©ã€ã³ããã¹ãŠã®åºåã©ã€ã³ã枩床ã»ã³ãµãŒã®èªã¿åãå€ãPWMåºåé»åããã«ã¹ã«ãŠã³ã¿ãŒãªã©ïŒããšã«å¥ã ã«ãããŸããŸãªåœ¢åŒã§ã¢ãžã¥ãŒã«ã®å®å šãªã¹ããŒã¿ã¹ãèŠæ±ã§ããŸããå€èŠçŽ ãã©ã¡ãŒã¿ãŒã®èŠçŽ ããïŒç¹å®ã®ãªã¬ãŒãŸãã¯åå¥ã®ã©ã€ã³ïŒã Laurentã¢ãžã¥ãŒã«ã䜿çšãããšãä¿è·ã¢ãŒãããªãããªã³ãã«é¢ä¿ãªããããŒãã®ã¹ããŒã¿ã¹ãèŠæ±ã§ããŸãã
é¢æ°ãšã³ããªã®åœ¢åŒã¯æ¬¡ã®ãšããã§ãã
[$FuncLaurent2Status Ladr="IP-address" Lport="http-port" Type="all, xml or name" N="el. number"]
ãã®å ŽåïŒ
Ladrããã³Lport-ãããã¯ãŒã¯äžã®IPã¢ãã¬ã¹ãšhttpããŒãïŒããŒãã¯çç¥å¯èœïŒLaurent2ããã€ã¹ã
ã¿ã€ã -Laurent2ããŒãã®æè¡çãªèª¬æã«åŸã£ãŠå€ïŒsystimeãreleãinãoutãadc1ãadc2ãcount1ãcount2ãcount2ãcount4ãtempãpwmïŒããšãããšãã§ããå¿ é ãã©ã¡ãŒã¿ãŒã Type = "all"ãŸãã¯Type = "xml"ãèšå®ããããšãã§ããŸãããTypeããŸã£ããæå®ããªãã§ãã ãã-åãå ¥ããããŸããã
Nã¯ãªãã·ã§ã³ã®é¢æ°ãã©ã¡ãŒã¿ãŒã§ãã è€æ°èŠçŽ ã¿ã€ãïŒreleãinãoutïŒã«ã®ã¿äœ¿çšãããTypeãã©ã¡ãŒã¿ãŒã®èŠæ±ãããã¹ããŒã¿ã¹èŠçŽ ã®æ°ã決å®ããŸãïŒrele N = [1-4]ãout N = [1-12]ãin N = [1ïŒ -6]ïŒ;
æ£åžžã«å®è¡ããããšïŒãšã©ãŒãªãïŒãé¢æ°ã®å¿çãLanswerå€æ°ãŸãã¯åã次å ã®1次å ããŒé åã§è¿ãããŸãïŒã¢ãžã¥ãŒã«ã®ã¹ããŒã¿ã¹å šäœãType =â allâã§èŠæ±ãããå ŽåïŒä»¥äžãåç §ïŒã
Type =â xmlâãèšå®ãããšãé¢æ°ã¯ãããŒãã«ãã£ãŠæå®ãããxml圢åŒãå€æŽããã«ã¢ãžã¥ãŒã«ã¹ããŒã¿ã¹ãè¿ããŸãã Mikrotik RouterOSã§ã¯ããã®ãããªåœ¢åŒã¯ã»ãšãã©äŸ¿å©ã§ã¯ãããŸãããããã®æ©èœã¯ä¿æãããŸãã
Type =â allâã®å Žåãé¢æ°ã¯å®å šãªã¢ãžã¥ãŒã«ã¹ããŒã¿ã¹ã1次å ã®LanswerããŒé åã§è¿ããŸãã åã ã®èŠçŽ ã®ã¹ããŒã¿ã¹ã¯ãèŠçŽ ã®ããŒåã«ãã£ãŠæœåºã§ããŸãã èŠçŽ ããŒã«ã¯ãã¢ãžã¥ãŒã«ã¹ããŒã¿ã¹ãã©ã¡ãŒã¿ã®æè¡çãªèª¬æïŒsystimeãreleãinãoutãadc1ãadc2ãcount1ãcount2ãcount2ãcount4ãtempãpwmïŒã«åŸã£ãŠååãä»ããããŸãã
systime-é»æºäŸçµŠã®ç¬éããèšç®ãããã¢ãžã¥ãŒã«ã®çŸåšã®ã·ã¹ãã æéïŒç§åäœïŒã
rele-èŠçŽããŒã¿è¡ã®åœ¢åŒã®ã¢ãžã¥ãŒã«ãªã¬ãŒã®ç¶æ ã è¡ã®æåã®æåã¯ããªã¬ãŒçªå·1ããªã¬ãŒçªå·2ã®2çªç®ã®æåãªã©ã«å¯Ÿå¿ããŸãã 察å¿ããäœçœ®ã®1ã¯ããªã¬ãŒãªã³ãã0-ãªãã«å¯Ÿå¿ããŸãã
in-èŠçŽããŒã¿æååãšããŠã®6ã€ã®åå¥å ¥åè¡ãã¹ãŠã®ç¶æ ã è¡ã®æåã®æåã¯ãè¡çªå·1ã2çªç®ã®æåã®è¡çªå·2ãªã©ã«å¯Ÿå¿ããŸãã ã0ã-äœè«çã¬ãã«ãåç·ã«èšå®ãããã1ã-ããããé«è«çã¬ãã«ã
out -12ã®åºåè¡ã«ã€ããŠãåæ§ã§ãã
adc1-ãã«ãåäœã®ADC-1ã¢ãžã¥ãŒã«ã®ãã£ãã«æž¬å®å€ã®èªã¿åãå€ã
adc2-ãã«ãåäœã®ADC-2ã¢ãžã¥ãŒã«ã®ãã£ãã«æž¬å®å€ã®èªã¿åãã
temp-枩床ã»ã³ãµãŒã®èªã¿åãå€ïŒææ°ïŒã
count1-ãã«ã¹ã«ãŠã³ã¿ãŒçªå·1ã®å€ãç¯å²0ã32766ã®æŽæ°ã
count2-ä»ã®3ã€ã®ãã«ã¹ã«ãŠã³ã¿ãŒã«ã€ããŠãåæ§ã§ã...;
count3-
count4-...
pwmã¯ãPWMåºåã§ã®ä¿¡å·ã®åºåé»åã§ãã 0ãã100ãŸã§ã®å€ãåãããšãã§ãã
ããŒã»ã³ãã§
äŸãšããŠãããã€ã¹ã®å®å šãªã¹ããŒã¿ã¹ãååŸããã«ãŒã¿ãŒãã°ã®åã ã®ãã©ã¡ãŒã¿ãŒã®ã¿ã衚瀺ããŸã-枩床ã»ã³ãµãŒã®æž©åºŠïŒtempïŒãšãã¹ãŠã®ãªã¬ãŒã®ã¹ããŒã¿ã¹ïŒreleïŒïŒ
FuncLaurent2Statusé¢æ°ãæäœããã¹ã¯ãªããäŸ1
:global FuncLaurent2Status; ; # Lanswer ; :local Lanswer [$FuncLaurent2Status Ladr="192.168.0.101" Type="all"]; # ; :log info " Laurent2 -:"; :log info $Lanswer; :log info ""; ; # : :local termokey "temp"; :local relekey "rele"; :local Tsend ""; :set Tsend ($Lanswer->$termokey); :log info (" : "."$Tsend"); :log info ""; :set Tsend ($Lanswer->$relekey); :log info ("- : "."$Tsend"); :log info ""; ; # : :log info (" :"."\n"); :local rezult; local Saction; :local Reletext; :for i from=1 to 4 do {:set rezult [:pick $Tsend ($i-1) $i]; :if (rezult="0") do={:set Saction "< >"} else={:set Saction "< >"} :log info (" â"."$i"." "."$Saction"); :set Reletext ("$Reletext"." â"."$i"." "."$Saction"."\n")} :log info "";
äžèšã®ã¹ã¯ãªããã®ã«ãŒã¿ãŒãã°ãžã®åºåïŒ
*泚ïŒ
-RouterOSã§ã¯ãããŒé åã®èŠçŽ ã¯ããŒã®ååã«åŸã£ãŠã¢ã«ãã¡ãããé ã«äžŠã¹ãããŸãã ããã¯ãéžæçãªåºåã«ã¯äžå圱é¿ããŸãã;ååãŸãã¯ã©ã³ãã ãªé åºã§é åã®å¿ èŠãªèŠçŽ ãèŠæ±ã§ããŸãã
-ãã®å Žåã®æž©åºŠã»ã³ãµãŒã¯-273°CïŒæªæ¥ç¶ïŒã瀺ããŸãã
-4ã€ã®ãã¹ãŠã®çµã¿èŸŒã¿ã¢ãžã¥ãŒã«ãªã¬ãŒïŒãªã³/ãªãïŒã®ã¹ããŒã¿ã¹ãæ確ã«è¡šç€ºãããŸãã
äœçœ®çªå·ã«å¯Ÿå¿ãããã¹ãŠã®å¯Ÿå¿ããèŠçŽ ã®ã¹ããŒã¿ã¹ãè¡ã«å«ããã«ãèŠçŽ ãã©ã¡ãŒã¿ãŒïŒreleãinãŸãã¯outãªã©ïŒã®å Žåãç¹å®ã®èŠçŽ ã®ã¿ã衚瀺ã§ããŸãïŒç¹å®ã®ãªã¬ãŒãå ¥ååç·ãŸãã¯åºååç·ã®ã¹ããŒã¿ã¹ïŒã ããã¯ãã«ãŒãå ã®Nãã©ã¡ãŒã¿ãŒã䜿çšããŠç¹å®ã®èŠçŽ ã®ã¹ããŒã¿ã¹ãèŠæ±ããæ©èœãåŒã³åºããªãããã«ãåå¥ã®ç°çš®ãã©ã¡ãŒã¿ãŒããã³èŠçŽ ã®ã¹ããŒã¿ã¹ãŸãã¯èŠçŽ ã°ã«ãŒãã®ã¹ããŒã¿ã¹ãååŸããå¿ èŠãããå Žåã«äŸ¿å©ã§ãã
ããšãã°ããã§ã«åä¿¡ããã¢ãžã¥ãŒã«ã®å®å šãªã¹ããŒã¿ã¹ãããå ¥åè¡çªå·6ã®ã¿ã®ç¶æ ãå°ãåºããŸãã
# ; :local numelem 6; # ; :local Par ($Lanswer->"in") :local elem [:pick $Par ($numelem-1) $numelem] :log info $elem
ããŒãã®å®å šãªç¶æ ã§ã¯ãªããç®çã®ãã©ã¡ãŒã¿ãŒã®ç¶æ ã®ã¿ãçŽæ¥èŠæ±ããããšãã§ããŸããããšãã°ããã¹ãŠã®åºåè¡ïŒoutïŒïŒ
:local Lanswer [$FuncLaurent2Status Ladr="192.168.0.101" Type="out"]; :set Lanswer (" : "."$Lanswer"); :log info $Lanswer;
ãŸãã¯ãè€æ°èŠçŽ ãã©ã¡ãŒã¿ãŒã®1ã€ã®èŠçŽ ã®ã¿ïŒãªã¬ãŒçªå·7ã«ããŸãïŒïŒ
:local Lanswer [$FuncLaurent2Status Ladr="192.168.0.101" Type="rele" N="7"]; :log info $Lanswer;
1ã€ã®èŠçŽ ïŒtempãcont2ãadc1ãsystimeãªã©ïŒãæã€ãã©ã¡ãŒã¿ãŒã®å ŽåãNã¯æå®ããããæå®ãããŠãç¡èŠãããŸãã
Nã¯å¯èœïŒinãoutãreleïŒã§ããããæå®ãããŠããªãTypeã®å ŽåãTypeã§æå®ããããã£ãŒã«ãå šäœã®ã¹ããŒã¿ã¹ã¯æååãšããŠè¿ãããŸããããšãã°ãã0100011000ãïŒãã®Typeã®èŠçŽ ã®æ°ãèæ ®ããŠïŒ 1ãŸãã¯ãã°0ã
è€æ°èŠçŽ ã®ãã©ã¡ãŒã¿ãŒãèŠæ±ãããNãé¢æ°ã§æå®ãããæ£ããèšå®ãããŠããªãå ŽåïŒãã®Typeã«å¯ŸããŠN <1ãŸãã¯N>ãå¯èœïŒãTypeãã©ã¡ãŒã¿ãŒå šäœãè¿ãããŸãïŒèª€ã£ãç¯å²Nã®ãšã©ãŒã¯çæãããŸããïŒã
ãã°ã€ã³/å®è¡ã«å€±æããå Žåãé¢æ°ã¯ä»¥äžã®ãšã©ãŒã¡ãã»ãŒãžããã°ã«èšé²ããLansswserå€æ°ã«è¿ãããšãã§ããŸãã
>ãšã©ãŒïŒããã€ã¹ãå¿çããŸãã-pingã«å¯ŸããLaurentã¢ãžã¥ãŒã«ã®å¿çããªãå Žåã
>ãšã©ãŒïŒã³ãã³ãROS-RouterOs /ããŒã«ãã§ããURLã³ãã³ãã®å®è¡æã«ãšã©ãŒãçºçããå Žåã
>ãšã©ãŒïŒã¿ã€ããã¹ããã-ãªã¯ãšã¹ãã§ã¹ããŒã¿ã¹ãã©ã¡ãŒã¿ãæ£ããæå®ãããŠããªãå ŽåïŒreleãoutãinãallãªã©ïŒ
以äžã¯ãLaurentããã€ã¹ã®ã¹ããŒã¿ã¹ãå®å šãŸãã¯éžæçã«æäœã§ããããã«ããã¹ã¯ãªããã³ãŒãã®äŸã§ãã 圌ã®äœåã®ããžãã¯ãåæããåŸãã¢ãžã¥ãŒã«ã¹ããŒã¿ã¹ãèŠæ±ããç¬èªã®ã¹ã¯ãªãããäœæã§ããããšãé¡ã£ãŠããŸãã
FuncLaurent2Statusé¢æ°ãæäœããã¹ã¯ãªããäŸ2
:global FuncLaurent2Status; ; :local Ltype "out"; # all â (rele, out, temp ...); :local Npar ""; # - (""); :local PR "all"; #- "all" â Npar; ; :local Lanswer [$FuncLaurent2Status Ladr="192.168.0.101" Lport="80" Type=$Ltype]; :if ($Lanswer=">ERROR: device protect") do={:log error " . "}; :if ([:find $Lanswer "ERROR"]=1) do={:log error $Lanswer;} else={ :local keytype [:toarray "systime, rele, in, out, adc1, adc2, count1, count2, count3, count4, temp, pwm"]; :local typepar {"systime"="1"; "rele"="4"; "in"="6"; "out"="12"; "adc1"="1"; "adc2"="1"; "count1"="1"; "count2"="1"; "count3"="1"; "count4"="1"; "temp"="1"; "pwm"="1"}; :local T; :local row; :local rezult; :if ($Ltype="all") do={ :foreach i in=$keytype do={ :set row ($Lanswer->$i); log info ("$i"." = "."$row");} } else={:set T ($typepar->"$Ltype"); :if ($PR="all") do={:set rezult $Lanswer} else={:set rezult (". . ". "$[:pick $Lanswer ($Npar-1) $Npar]")} :log info ("$Ltype"." "."$T"."; "."$Ltype "."$Npar".": "."$rezult");}}; :log info "";
Laurent112ã¢ãžã¥ãŒã«ã®æ©èœ
Laurent112ã¢ãžã¥ãŒã«ã¯è² è·ã®æ¥ç¶ã®ã¿ãç®çãšããŠããŸãããçµã¿èŸŒã¿ãªã¬ãŒã®æ°ã¯12ã§ãããããã£ãŠããã®æ©èœããµããŒãããããã«ã FuncLaurent112RELãªã¬ãŒã®ã€ã³ã¹ããŒã«ãšFuncLaurent112Statusã¢ãžã¥ãŒã«ã®ã¹ããŒã¿ã¹ã®èŠæ±ãšãã2ã€ã®æ©èœã®ã¿ãäœæãããŸããã
FuncLaurent112REL -Laurent112ã¢ãžã¥ãŒã«ã®ãªã¬ãŒãæäœããæ©èœã¯ãäžèšã®Laurent2ã®æ©èœãšå®å šã«é¡äŒŒããŠããŸãã ãã®é¢æ°ã®Releãã©ã¡ãŒã¿ãŒã¯ã[1-12]ã®ç¯å²ã§å€åããŸãã
FuncLaurent112Status -Laurent112ã¹ããŒã¿ã¹ãªã¯ãšã¹ãæ©èœã¯ãé»æºããã¢ãžã¥ãŒã«ãžã®ã·ã¹ãã æéçµéïŒsystimeïŒãšãªã¬ãŒã¹ããŒã¿ã¹ïŒreleïŒã®2ã€ã®ã¹ããŒã¿ã¹ãã©ã¡ãŒã¿ã®ã¿ã®çºè¡ã«å¶éãããŠããŸãã
Laurent2ã¹ããŒã¿ã¹ãªã¯ãšã¹ãé¢æ°ãšåæ§ã«ãFuncLaurent112Statusé¢æ°ã¯Laurent112ã®å®å šãªã¹ããŒã¿ã¹ãxmlã¢ãžã¥ãŒã«åœ¢åŒïŒType =â xmlâãæå®ããå ŽåïŒãLanswerã«é 眮ãããããŒé åãšããŠïŒType =â allâïŒãŸãã¯systimeã«å¯ŸããŠåå¥ã«è¡šç€ºã§ããŸããã¬ã¬ã Type =â releâã®å Žåããªã¯ãšã¹ãã®ãã©ã¡ãŒã¿Nã¯ãªã¯ãšã¹ãã«ç€ºãããã¹ããŒã¿ã¹ããªã¯ãšã¹ãããå¿ èŠããããªã¬ãŒçªå·ã瀺ããŸãã Nãæå®ãããŠããªãå ŽåããŸãã¯å¯èœãªå€ã®ééã£ãç¯å²ïŒ1ãã12ïŒã«èšå®ãããŠããå Žåãé¢æ°ã¯ãã¹ãŠã®ãªã¬ãŒã®ã¹ããŒã¿ã¹ãå«ãæååãè¿ããŸãããªã¬ãŒã¹ããŒã¿ã¹ã¯ããªã¬ãŒã®å¯Ÿå¿ãããªã¬ãŒçªå·ã«0 ã
ãããã®é¢æ°ã«ã¢ã¯ã»ã¹ããããã®åœ¢åŒãšè¿ããããšã©ãŒã¡ãã»ãŒãžã¯ã察å¿ããLaurent2é¢æ°ã«äŒŒãŠããŸãïŒäžèšãåç §ïŒã
Mikrotikã«ãŒã¿ãŒãšLaurentã€ã³ã¿ãŒãããã¢ãžã¥ãŒã«ã®å®è£ ãããçµ±åãå®éã«äœ¿çšããæ¹æ³ã¯ïŒ
Mikrotikã«ãŒã¿ãŒãšæå®ãããLaurentã€ã³ã¿ãŒãããã¢ãžã¥ãŒã«ã®çµ±åã®çµæã®éèŠãªãã€ã³ãã®1ã€ã¯èªåŸæ§ã§ããã€ãŸãã2ã€ã®ãããã¯ãŒã¯ããã€ã¹éã§ååšããå¯èœæ§ããããŸã.2ã€ã®ãããã¯ãŒã¯ããã€ã¹ã¯ããããPCã§ã¯ãªãã人ïŒãŠãŒã¶ãŒã管çè ïŒã®åå ãªãã§åäœã§ããŸãã ãã®å Žåãã«ãŒã¿ãŒã¯ããŒã«ã«ãããã¯ãŒã¯ã®ã¡ã€ã³ããã€ã¹ã§ãããååãšããŠã€ã³ã¿ãŒããããžã®ã²ãŒããŠã§ã€ã§ãã Router OSã®æ©èœãšRouterBoardã®å¹ åºãããŒããŠã§ã¢ç¯å²ãèãããšããã®çµ±åã®ãã¹ãŠã®å¯èœãªã¢ããªã±ãŒã·ã§ã³ãæ³åããã®ã¯å°é£ã§ãããã¹ãŠã¯æè¡çãªã¿ã¹ã¯ãšã¢ããªã±ãŒã¿ãŒã®æ³ååã«äŸåããŸãã
CATã·ã¹ãã ãå«ãé©åãªæ§æåŸã®LaurentããŒãã®ããããªãŒå¯¿åœã®ã»ãšãã©ã¯ãäžè¬ã«ç¬ç«ããŠå®è¡ã§ããŸãã
Mikrotikã«ãŒã¿ãŒãšã®çµ±åã«ãããLaurentã®äž»ãªçšéã¯æ¬¡ã®ãšããã§ãã
- - , .
- / (, , )
- «» .
- « » Laurent, /, ) .
- / (, âŠ), , SMS.
次ã«ããããã®ããã€ãã®å®è£ äŸãæ€èšããŸãã
1.éèŠãªãããã¯ãŒã¯ãªãœãŒã¹ãžã®ã¢ã¯ã»ã¹ã®ãç©ççä¿è·ãã
ããŒã«ã«ãããã¯ãŒã¯ã«ãå€éšããã®ã¢ã¯ã»ã¹ããããã«ä¿è·ãããéèŠãªããã€ã¹ããããšããŸãããåç¥ã®ããã«ãããšãã°ãããŒããããã³ã°æ¹åŒãããŸããŸãªVPNãã³ãã«ã®æŽçãªã©ãå€ãã®ãããã¯ãŒã¯ä¿è·ããããŸãã
ãããã¯ãã¹ãŠæªãã¯ãããŸããããã»ãšãã©ãã¹ãŠãé·ãééãããŠããŸãããã¡ãããããªããéè¡å®¶ã§ãªããã°ãå°é家ã¯ããªãã®ãããã¯ãŒã¯ããããã³ã°ãããéåžžã®ãŠãŒã¶ãŒã¯ååãšããŠå é²åŸ¡ãç Žãããšããã§ããŸããã
ããã«ããããããããªã¢ãŒããã¹ã¯ãããããã¡ã€ã«ãµãŒããŒãªã©ããããã³ã°ããå€ãã®äºå®ããããŸãããããã¯ããŸãå¿«é©ã§ã¯ãããŸããããã®æå³ã§çµ±åã¯äœãæäŸã§ããŸããïŒ
äž»ã«-é·æã«ããããªãœãŒã¹ãžã®ã¢ã¯ã»ã¹ã®ç©ççå¶éãããã¯ãå€éšãããããã¯ãŒã¯ããããã³ã°ããå¯èœæ§ã«åœ±é¿ãäžããæãéèŠãªèŠå ã®1ã€ã§ãã
ãããã£ãŠããããã¯ãŒã¯ä¿è·ã®ããã°ã©ã ã«ãããã¹ãŠã®æ¹æ³ïŒããšãã°ãã«ãŒã¿ãŒèªäœã®NATããã³ãã¡ã€ã¢ãŠã©ãŒã«ïŒã¯ããããã¯ãŒã¯äžã§åžžã«åäœããŠãããããã¯ãŒã¯ãªãœãŒã¹ãžã®ã¢ã¯ã»ã¹ãä¿è·ããããšã«æ³šæããŠãã ããã
Mikrotikãããã¯ãŒã¯ãªã¬ãŒïŒãã®å Žåã¯Laurentã¢ãžã¥ãŒã«ïŒãçµ±åããããšã«ããããããã®ä¿è·æ¹æ³ã«å ããŠããããã¯ãŒã¯äžã§å¿ èŠãªããã€ã¹ãžã®ã¢ã¯ã»ã¹ã®ãç©ççãªãããã¯ããç°¡åãã€äŸ¿å©ã«äœæã§ããŸãããããå®è£ ããæ¹æ³ã¯ïŒ
ä¿è·ãããããã€ã¹ïŒããšãã°ãäŒç€Ÿã«é¢ããããŒã¿ã®å人ã¢ãŒã«ã€ããæã€ç§å¯ãã¡ã€ã«ãµãŒããŒïŒã®é»æºã¯ãLaurentã¢ãžã¥ãŒã«ãªã¬ãŒã®1ã€ãããšãã°ãªã¬ãŒ1ã«æ¥ç¶ãããŸããããšãã°ãOS Mikrotikaã«ãŒã¿ãŒã§VPNãµãŒããŒãæ§æããŸãã ã Router Ocã䜿çšãããšãåVPNã¯ã©ã€ã¢ã³ããŸãã¯ã¯ã©ã€ã¢ã³ãã°ã«ãŒãããšã«ããµãŒããŒã¯ã©ã€ã¢ã³ããŠãŒã¶ãŒã®åå¥ã®PPPãããã¡ã€ã«ïŒPPPãããã¡ã€ã«ïŒãæè»ã«æ§æã§ããŸããããšãã°ãD_Ivanovãšããååã®VPNã¯ã©ã€ã¢ã³ãçšã«æ§æãããPPPãããã¡ã€ã«ããããŸããã¯ã©ã€ã¢ã³ãå ¥åã®ãã°ã€ã³ãšãã¹ã¯ãŒããããã³åPPPãããã¡ã€ã«ã®ãã®ä»ã®å¯èœãªãããã¯ãŒã¯èšå®ã®ãã¹ãã®èšå®ã«å ããŠãã«ãŒã¿ãŒOSã§ã¯ãå®è¡å¯èœã¹ã¯ãªããã³ãŒããçŽæ¥é 眮ã§ããPPPã¹ã¯ãªããã®ãon Upãããã³ãon Downããªãã·ã§ã³ãèšå®ã§ããŸãã
ãããã®ãã£ãŒã«ãã«æ¬¡ã®ã³ãŒããå ¥åããŸãã
次ã«ããŠãŒã¶ãŒåãšãã¹ã¯ãŒãïŒç¬¬1ã¬ãã«ã®ä¿è·ïŒã§VPNã¯ã©ã€ã¢ã³ãD_Ivanovã®ã«ãŒã¿ãŒã«æ¥ç¶ãããšã5ç§åŸã«ãon Upãã«èšå®ãããã¹ã¯ãªãããå®è¡ãããŸãã 1ãç©ççä¿è·ãã®2çªç®ã®æ®µéã§ãããç§å¯ããã¡ã€ã«ãµãŒããŒã®ãã¯ãŒãæ¥ç¶ãããŠããŸãããµãŒããŒã®é»æºããªã³ã«ãªããèµ·åããã¯ã©ã€ã¢ã³ãã¯VPNãä»ããŠãå€éšãã«ã¢ã¯ã»ã¹ããŸãã VPNã¯ã©ã€ã¢ã³ãããã³ãã«ãåæãããšïŒã»ãã·ã§ã³ãçµäºããããã€ã³ã¿ãŒããããã©ãã£ãã¯éåã«ããã»ãã·ã§ã³ãåæããããšïŒããon Downããã£ãŒã«ãã«ãã2çªç®ã®ã¹ã¯ãªããããã¡ã€ã«ãµãŒããŒã®é»æºããªãã«ãããµãŒããŒã«ç©ççã«ã¢ã¯ã»ã¹ã§ããªããªããŸããããã«ããããµãŒããŒïŒãŸãã¯ä»ã®ããã€ã¹ãããªããæããã®ã¯äœã§ãïŒã¯åžžã«çšŒåç¶æ ã«ããïŒãããŠ1æ¥24æéãã¹ã¯ãŒãã¯ã©ãã«ãŒã®æœåšçã«è匱ãªã¿ãŒã²ããã«ãªãããïŒãVPNã¯ã©ã€ã¢ã³ãã¢ã¯ã»ã¹ã®æéäžã®ã¿ç©ççã«ãªã³ã«ãªããŸãã
ãã®äºéä¿è·æ¹æ³ã¯éåžžã«å¹æçã§ããã§ã«ä¿è·ãããã«ãŒã¿ãŒã®èåŸã«ããã¢ã€ãã«ããã€ã¹ã«ãè¿ã¥ããŠãããã®ã¢ãã«ãèŠã€ããããŒãã«pingãéä¿¡ããããšã¯åã«äžå¯èœã§ãããåäœããçæéã§ãããè¡ãããšã¯éåžžã«å°é£ã§ãã«ãŒã¿ãŒãžïŒããã¡ãããPPPãããã¡ã€ã«ã¹ã¯ãªããã®åããã£ãŒã«ãã«ãVPNã¯ã©ã€ã¢ã³ãã®å ¥ãå£ã«é¢ããã¡ãã»ãŒãžãã¡ãŒã«ãŸãã¯æºåž¯é»è©±ã«éä¿¡ããã³ãŒããè¿œå ã§ããŸãïŒç¹ã«ã管çè ã«ã«ãŒã¿ãŒã®VPNãµãŒããŒããããã³ã°ããããšãéç¥ããŸãããç§å¯ã®ãã¡ã€ã«ãµãŒããŒã¯ãŸã éç¥ããŸããïŒïŒããã«ä¿è·ãããŸãïŒã
2.åã ã®ãããã¯ãŒã¯ã»ã°ã¡ã³ãã®ãªã³/ãªããåãæ¿ããŸãã
ãªã¬ãŒãŸãã¯åºåã©ã€ã³ãæäœããæ©èœãæäœãããšãïŒãªã¬ãŒãŸãã¯ãªã¬ãŒãããã¯ããããã«æ¥ç¶ã§ããããšãå¿ããªãã§ãã ããïŒãããšãã°ãã«ãŒã¿ãŒã®èåŸã«ããããŒã¿ãŒãããã¯ãŒã¯ãšãµãããããç©ççã«ãªã³/ãªãã«ããããšãã§ããŸãã Laurent2ã¢ãžã¥ãŒã«ã«ã¯4ã€ã®å èµãªã¬ãŒãš12ã®åºåã©ã€ã³ããããããããã¹ãŠã䜿çšããïŒãŸãããªã¬ãŒãŸãã¯ãªã¬ãŒãããã¯ãåºåã©ã€ã³ã«æ¥ç¶ããïŒãšã16ã®åºåãåŸãããŸãã Laurent112ã«ã¯ã12åã®æ¢è£œã®å èµãªã¬ãŒãæèŒãããŠããŸããã€ãŸãããããã®Laurentã¢ãžã¥ãŒã«ã®1ã€ã䜿çšãããšã16åãŸãã¯12åã®Wi-Fiã¢ã¯ã»ã¹ãã€ã³ããã¹ã€ããããŸãã¯åæ§ã®ãããã¯ãŒã¯ããã€ã¹ãåå¥ã«å«ããããšãã§ããŸãã
ãããã£ãŠã倧èŠæš¡ãªãªãã£ã¹ãŸãã¯äŒæ¥å šäœã®ãããã¯ãŒã¯ã®åäœã調æŽãããããªã³/ãªããããããã²ã¹ãããããã¯ãŒã¯ããã¹ããªãŒããã¢ã¯ã»ã¹ãã€ã³ãããããã¯ãŒã¯ããªããžãã€ã³ããªã©ãç©ççã«ãªã»ãããããã§ããŸãããŸããããã¯ãããã¯ãŒã¯ãªãã¬ãŒã¿ãŒ/管çè ã§ã¯ãªããã¹ã±ãžã¥ãŒã«ãŸãã¯ä»»æã®æ¡ä»¶äžã§ã®èªåã¢ãŒãã®Mikrotikã«ãŒã¿ãŒã«ãã£ãŠå®è¡ã§ããŸãã
ããšãã°ãé¢æ°ã䜿çšããŠwifiã¢ã¯ã»ã¹ãã€ã³ããæå¹ã«ããŸãããªã³ã«ãªããªããã€ãŸãpingã«å¿çãããã¯ã©ã€ã¢ã³ããæ¥ç¶ããªãïŒãããã¹ã¯ãªããããã§ãã¯ããŸãïŒ-é»æºããªãã«ããŠå¥ã®ããã¯ã¢ãããã€ã³ããªã©ããªã³ã«ããŸã...ããã«ããããã©ãã£ãã¯æ¶è²»ãå¶éãããç¹å®ã®ãããã¯ãŒã¯ã»ã°ã¡ã³ãã®ã»ãã¥ãªãã£ãããã«ç¢ºä¿ãããŸãïŒäŸïŒéãïŒã
3. Laurentã¢ãžã¥ãŒã«ã®ç£èŠãšMikrotikãšã®ã¹ã±ãžã¥ãŒã«ãããçµ±å
Laurentã¢ãžã¥ãŒã«èªäœã¯æ£ç¢ºãªã¿ã€ã ãµãŒããŒããæéããèªã¿åããªãããããã¢ãžã¥ãŒã«å ã®ã¹ã±ãžã¥ãŒã«ãããäœæ¥ã¯éåžžã«éãããŠããŸããã¢ãžã¥ãŒã«ã¯ãèªåèªèº«ã®ã·ã¹ãã æéã«ã®ã¿äŸåã§ããŸããããã«ãããããŒãèªäœãžã®é»åäŸçµŠããã«ãŠã³ãããŠã³ãéå§ãããŸãã
ã«ãŒã¿ãŒMikrotikã¯ãæ¥ä»ããšã«ãå®éã®ãæ¯æ¥ã®æéã§åäœããã¹ã¯ãªãããŸãã¯ç¬èªã®ãã¹ã±ãžã¥ãŒã©ãŒãã§ãã®æéã远跡ããããšã«ãããæ£ç¢ºãªã¹ã±ãžã¥ãŒã«ã«åŸã£ãŠRouterOSã§ä»»æã®ã¢ã¯ã·ã§ã³ãå®è¡ã§ããŸãïŒWINBOXã§ã¯/ã·ã¹ãã ã¹ã±ãžã¥ãŒã©ãŒã¿ãã§äœ¿çšå¯èœïŒãããã§ãLaurentã¢ãžã¥ãŒã«ã®ãµããŒãé¢æ°ã䜿çšããã¹ã¯ãªãããé 眮ããããšãã§ããŸãïŒãããã®ããžãã¯ãèšå®ããããšã§ãã«ãŒã¿ãŒã®èµ·åæãåžæããé 延ã§ã®èµ·åæãç¹å®ã®æå»ã1åãŸãã¯å®æçãªç¹°ãè¿ãã§ãèµ·åãã§ããŸãïŒã
ãããã®æ©èœã䜿çšãããšãLaurentã¢ãžã¥ãŒã«ã®CATã·ã¹ãã ã«å ããŠãè² è·ãšåç·ã管çã§ããã ãã§ãªããRouterOS Mikrotikaã§ã¢ãžã¥ãŒã«ãŸãã¯ãã®åã ã®èŠçŽ ã®ã¹ããŒã¿ã¹ãèªã¿åãããšãã§ããŸãã次ã«ãCATã·ã¹ãã ã®æ¡ä»¶ãšåæ§ã®æ±ºå®ãè¡ããSMSãä»ããŠã«ãŒã¿ãŒã®ç®¡çè ãšãŠãŒã¶ãŒã«ã¡ãŒã«ã¢ãã¬ã¹ãæºåž¯é»è©±çªå·ãžã®ã€ãã³ãã«ã€ããŠéç¥ããŸããåæã«ãç¡æã®æ©èœã䜿çšããŠãã¡ãŒã«ã¢ãã¬ã¹ããæºåž¯é»è©±çªå·ïŒsms.ruãªãœãŒã¹ãªã©ïŒã«ã¡ãã»ãŒãžã転éã§ããŸãã MikrotikããTelegramãããã«ããŒã¿ãéä¿¡ããããšãã§ããŸããã€ã³ã¿ãŒãããäžã§ãããæ§æããæ¹æ³ã«é¢ããç¹å¥ãªæ瀺ããããŸãã
äŸãšããŠã以äžã¯Laurentã¢ãžã¥ãŒã«ããå®å šãªã¹ããŒã¿ã¹ãååŸããŠäŸ¿å©ãªèŠèŠçã¬ããŒããäœæãããã®ã¬ããŒãããŠãŒã¶ãŒã®ã¡ãŒã«ã¢ãã¬ã¹ã«è»¢éããã¹ã¯ãªããã§ãïŒSmailå€æ°ã§ãŠãŒã¶ãŒã¢ãã¬ã¹ãèªåã®ãã®ã«çœ®ãæããããšãå¿ããªãã§ãã ããïŒã
ã¡ãŒã«ã¬ããŒãä»ãã®Laurent2ã¹ããŒã¿ã¹ãªã¯ãšã¹ãã¹ã¯ãªãã
# # Laurent2 c E-mail # ; # ; :global FuncMail; # - ; :local Smail "user@mail.ru"; # - ; ; :global FuncLaurent2Status; # - Laurent2; :local Sadr "192.168.1.101"; # - IP- ; :local Sport "80"; # - http-, :local Stype "all"; # - :local keytype [:toarray "systime, rele, in, out, adc1, adc2, count1, count2, count3, count4, temp, pwm"]; :local Tsend ""; ; # Laurent; ; :local Lanswer [$FuncLaurent2Status Ladr="192.168.0.101" Lport=$Sport Type=$Stype]; ; # Mtext ; :local Mtext; :local Stext; :local row; :foreach i in=$keytype do={ :set row ($Lanswer->$i); :set Stext ("$i"." = "."$row"."\n"); :set Mtext ("$Mtext"."$Stext")} ; # - Reletext ; :set Tsend ($Lanswer->"rele"); :local rezult; local Saction; :local Reletext; :for i from=1 to 4 do {:set rezult [:pick $Tsend ($i-1) $i]; :if (rezult="0") do={:set Saction "< >"} else={:set Saction "< >"} :set Reletext ("$Reletext"." â"."$i"." "."$Saction"."\n")} ; # ; :log info ("STATUS Laurent2 module IP "."$Sadr"."\n"); :log info $Mtext; :log info ""; :log info $Reletext; :set Mtext ("Router "."$[/system identity get name]"." about STATUS Laurent2 module IP "."$Sadr"."\n"."\n"."$Mtext"."\n"."$Reletext"); [$FuncMail Email=$Smail Mailtext=$Mtext]
äžèšã®äŸã®ã¹ã¯ãªããã³ãŒããå®è¡ãããšã次ã®çš®é¡ãšå 容ã®ã¡ãŒã«ãmail.ruã¡ãŒã«ãµãŒããŒã«å°ç
ããŸããã¹ã¯ãªããã³ãŒãã®ç¹å®ã®äŸãæ¹åããŠãèªç±ã«æ¡åŒµã§ããŸãã
Mikrotikããã³Laurentæ³šå ¥ãå®è£ ããå¯èœæ§ã¯ãäžèšã®äŸã«éå®ãããŸããããŠãŒã¶ãŒã®ç¹å®ã®ã¿ã¹ã¯ã«å¿ããŠãã»ãšãã©ãã¹ãŠã®ãœãªã¥ãŒã·ã§ã³ãäœæããããšã¯éåžžã«çŸå®çã§ãã
ãããã«
Laurent2ããã³Laurent112ã¢ãžã¥ãŒã«ããµããŒãããã¹ã¯ãªããã©ã€ãã©ãªã®æåã®ããŒãžã§ã³ã®æäœäžã«ããšã©ãŒãæ€åºããããããŠãŒã¶ãŒãã³ã¡ã³ããææ¡ãåãåã£ããããå¯èœæ§ããããŸããã©ã€ãã©ãªã¹ã¯ãªãããæ¹åããããã«ããã®ããšã«ã€ããŠåœŒã«ç¥ãããŠãããã°ãèè ã¯åãã§ããã§ãããããŸããåºæ¬çã«ãJEROMEã€ã³ã¿ãŒãããã¢ãžã¥ãŒã«ãªã©ããããã¯ãŒã¯RJ45ã€ã³ã¿ãŒãã§ã€ã¹ãæã€ä»ã®KernelChipã¢ãžã¥ãŒã«ã®ãµããŒããäœæããããšãã§ããŸãã
ã€ã³ã¿ãŒãããã¢ãžã¥ãŒã«Laurent2ããã³Laurent112ã管çããããã®ã¹ã¯ãªããã©ã€ãã©ãªã®ããŠã³ããŒã
Mikrotik Router OSããã®ã€ã³ã¿ãŒãããã¢ãžã¥ãŒã«ã®ç®¡çã«é¢ããããã°
02/01/2018 Serkov Sergey Vladimirovich
serkov1375@mail.ru