DS18B20
2つの温度センサーに接続されたArduinoがあります。私は非常に(非常に)Pythonが初めてです。シリアル入力を読み取って sqlite データベースに解析する方法を探していますが、それは先を行っています。シリアル ポートを変数に定義しようとするとエラーが発生するのはなぜですか?
まず最初にsys.version
2.7.1 (r271:86832, Jul 31 2011, 19:30:53)
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)]
現在、シリアル接続プログラムから入力を読み取っただけです。
from serial import serial
import time
# open serial port
ser = serial.Serial('/dev/tty.usbmodem621',9600,timeout=2)
ser.open()
while True:
print('dev 0' + ser.read())
pass
ser.close()
現在、コンパイルすることはできません。このエラーに対して私が見つけた結果のほとんどは、追加するように指示していますfrom serial import serial
が、この場合はうまくいきませんでした。
エラー。
$ python ser.py
Traceback (most recent call last):
File "ser.py", line 1, in <module>
from serial import serial
File "/Users/frankwiebenga/serial.py", line 8, in <module>
AttributeError: 'module' object has no attribute 'Serial'
また、使用しただけimport serial
でも同じエラーが発生します
$ python ser.py
Traceback (most recent call last):
File "ser.py", line 1, in <module>
import serial
File "/Users/frankwiebenga/serial.py", line 8, in <module>
AttributeError: 'module' object has no attribute 'Serial'
また、コメントごとに。という名前の新しいファイルを作成しましたが、またはsomething.py
を使用しても同じエラーが発生します。import serial
from serial import serial
$ python something.py
Traceback (most recent call last):
File "something.py", line 1, in <module>
from serial import serial
ImportError: No module named serial
bash スクリプトを実行すると、有効な出力が得られるので、Arduino コードではないことがわかります。
出力:
Requesting temperatures...DONE
Device 0: 25.62
Device 1: 25.75
Requesting temperatures...DONE
Device 0: 25.62
Device 1: 25.81
バッシュ:
while true # loop forever
do
inputline="" # clear input
# Loop until we get a valid reading from AVR
until inputline=$(echo $inputline | grep -e "^temp: ")
do
inputline=$(head -n 1 < /dev/tty.usbmodem621)
done
echo "$inputline"
done