RPIOをつかってサーボをコントロールしましたが,エラーがでてきました.
ソフトウェアのバグのようです.
症状
パイソンプログラムを実行すると次のエラーがでました.
1 2 3 4 5 6 7 8 9 10 11 |
"servo.py" 13L, 158C import webiopi from RPIO import PWM import time servo = PWM.Servo() servoPin = 14 while True: imput = input('>>') servo.set_servo(servoPin,int(imput)) |
1 2 3 4 5 6 7 8 9 10 11 12 |
hoge@raspberrypi:~/SWITCH $ sudo python3 servo.py Using hardware: PWM PW increments: 10us Initializing channel 0... Traceback (most recent call last): File "servo.py", line 9, in <module> servo.set_servo(servoPin,1600) File "/usr/local/lib/python3.4/dist-packages/RPIO-0.10.0-py3.4-linux-armv6l.egg/RPIO/PWM/__init__.py", line 212, in set_servo init_channel(self._dma_channel, self._subcycle_time_us) File "/usr/local/lib/python3.4/dist-packages/RPIO-0.10.0-py3.4-linux-armv6l.egg/RPIO/PWM/__init__.py", line 97, in init_channel return _PWM.init_channel(channel, subcycle_time_us) RuntimeError: rpio-pwm: Page 0 not present (pfn 0xa10000000000e4e6) |
対処法
1.githubから新しいRPIOを落としてきます
1 |
wget https://codeload.github.com/metachris/RPIO/zip/v2 |
2.拡張子はないですが,zipに圧縮されているので解凍します
1 |
unzip v2.1 |
3.インストールします
1 |
sudo python RPIO-2/setup.py install |
1 |
sudo python3 RPIO-2/setup.py install |
以上で終了です.
インストール時に次の関数は実行しなくても大丈夫だと思います
1 |
sudo python RPIO-2/setup.py install |
参考文献
http://raspberrypi.stackexchange.com/questions/55421/rpio-not-working-on-pi-zero-pi2-or-pi3