Control using Odroid SBC
Startup Session λ§λ€κΈ°
λ‘λ΄μ μ μμΈκ°ν OS μμμμ μλμΌλ‘ νλ‘κ·Έλ¨μ΄ λμλλλ‘ μΈν νλ λ°©λ²μ λν΄ μμλ³Έλ€.
~/.bashrc μ λͺ λ Ήμ΄λ₯Ό λ¨μΆμ΄λ‘ μ€νμν€κΈ° μν alias μ€μ μ νλ€. μ΄λ μ νμ¬νμ΄λ μ΄λ κ² ν΄λμΌλ©΄ νΈλ¦¬νλ€. μλμ κ°μ΄ λ΄μ©μ .bashrc νμΌ λ§μ§λ§μ κΈ°μ μ ν΄ λμΌλ©΄ mr0λΌλ λͺ λ Ήμ΄λ₯Ό ν΅ν΄ ν΄λΉνλ roslaunch λͺ λ Ήμ΄λ₯Ό μ€νν μ μλ€.
srκ³Ό sr0 λ¨μΆ λͺ λ Ήμ΄λ μλμμ λ€μ μ€λͺ νκ² λ€.
μ΄μ ~/ ν΄λμ νΉμ μνλ ν΄λμ screenμ μ΄μ©νμ¬ μμνλ‘κ·Έλ¨μ μ€νμν€λ λ°©λ²μ λν΄ μ€λͺ νλ€. screen μ΄ μ€μΉλμ΄ μμ§ μμ κ²½μ°μλ sudo apt-get install screen λͺ λ Ήμ΄λ‘ μ€μΉλ₯Ό νλ©΄λλ€. μλμ κ°μ bash scriptλ₯Ό μ΄μ©νμ¬ startupSess μ€ννΈμ μΈμ μ λ§λ€μ μλ€. cat λͺ λ Ήμ΄λ₯Ό μ΄μ©νμ¬ autorun_script.sh νμΌμμ λ΄μ©μ λ€μ¬λ€ 보면 screen λͺ λ Ήμ΄λ₯Ό μ΄μ©νμ¬ μμ νλ‘κ·Έλ¨μ΄ μ€νλλ©° mr0 λΌλ μμ μ μΈν λ¨μΆλͺ λ Ήμ΄λ‘ roslaunch νλ‘κ·Έλ¨μ μ€νν μ μκ² λλ€.
autorun_script.shλ μ€νκ°λ₯ λͺ λ Ήμ΄λ‘ λ§λ€μ΄μΌνκΈ° chmod +x autorun_script.sh λ₯Ό μ€ννμ¬ μ€νκ°λ₯νκ² λ§λ€μ΄λλλ€. μ¬κΈ°κΉμ§ νλ©΄ autorun_script.sh νμΌμ μ΄μ©νμ¬ screen μΈμ μ μ΄κ³ κ·Έ μμμ rosνλ‘κ·Έλ¨μ λλ¦¬κ² λλ€.
screenμ μ°λ¦¬κ° sshλ₯Ό μ΄μ©ν΄μ μ격μ μμ νλ©΄ ν°λ―Έλ μ°½μμ νλμ μΈμ μ΄ μμ±λλ―μ΄ μμ screenμ μ΄μ©νμ¬ μΈμ μ λ§λ κ²μ΄λ―λ‘ μ΄λ κΈ°λ³Έμ μΌλ‘ backgroundμμ λμνκ² λλ©° μ΄λ₯Ό νμΈνκΈ° μν λͺ λ Ήμ΄κ° μμμ 미리 λ§λ€μ΄ λμ sr μ΄λ€.
μ, μ΄μ μ€μ§μ μΌλ‘ μ²μ OSκ° μ€νλκ³ λμ μλμ μΌλ‘ autorun_script.shκ° λμλλλ‘ ν΄μΌνλ€. μ΄κ²μ /etc/rc.local νμΌμ λ€μκ³Ό κ°μ΄ μΆκ°νλ©΄ λλ€.
μ¬κΈ°μλ autorun_script.shμ autorun_script_gpio.sh λκ°μ bash scriptκ° κ°κ° λ 립μ μΈ screen μΈμ μΌλ‘ μ€νλλλ‘ νμλ€. μ΄λ odroidμ gpioλ₯Ό λ΄λΉνλ λ³λμ νλ‘κ·Έλ¨κ³Ό roslauchλ₯Ό ν΅ν΄ μ€ννλ λκ°μ νλ‘κ·Έλ¨μ λͺ¨λ μ€νν΄μΌνκΈ° λλ¬Έμ μ΄μ κ°μ΄ ꡬμ±νμλ€.
μ΄λ κ² μΈν μ νλ©΄ μμμ μλμ μΌλ‘ mr0 νλ‘κ·Έλ¨κ³Ό gpio νλ‘κ·Έλ¨μ΄ μ€νλλλ° μ΄λ backgroundμμ μ€νμ΄ λλ€κ³ νμμΌλ―λ‘ μ΄ μ€νμνλ₯Ό μ§μ νμΈνκ³ μ ν λλ sshλ‘ ν°λ―Έλ μ μμ ν μνμμ sr λλ sr0λ₯Ό ν΅ν΄ κ°κ° μΈμ μΌλ‘ μ μ₯μ ν μ μκ³ λμ¬ λλ exit λͺ λ Ήμ΄λ‘ λμ¬ μ μλ€.
Last updated