需要的材料
===
樹莓派小車底盤,這個上淘寶一搜一大堆,我買的四驅的,有帶亞克力兩層車板。三種杜邦線,每一種買十條就可以了,我當時怕不夠用,每一種都買了20條。移動電源,這個家里之前有一個飛毛腿的,要買雙usb輸出的。樹莓派L298N電機驅動板模塊紅外避障模塊和超聲波測距模塊,如果想做避障功能就需要買這個傳感器,買兩個(開始的時候不知道,我只買了一個紅外避障模塊…)。USB無線網卡
上面的花費下來,不計樹莓派、USB無線網卡和移動電源,大概花了90元左右。
與L298N驅動模塊連線
模塊兩邊有各有兩個out接口分布連接兩邊馬達,四個IN接口連接樹莓派的四個GPIO接口,連上后記得自己連接的接口編號就可以,寫代碼的時候需要。
供電
我使用之前買的移動電源供電,自帶有兩個USB接口,一個接樹莓派,一個接L298N驅動模塊。也可以自己買電池盒進行串聯供電。
接模塊的電源我使用usb線剪的,其中黑線是接地,紅線接VCC。
遙控程序
===
遙控主要是通過樹莓派的GPIO設置高低電平信號來控制小車前進、后退、左轉、右轉和停止,具體可以參考代碼和下面GPIO的接口說明。值得注意的是,1對應的樹莓派電路板背面焊錫為方形的針腳。

web版
web版可以直接使用王恆的版本(簡單可用):
https://github.com/wujiwh/piCar
主要修改自己接的GPIO接口和對應的方向。
iOS版
簡單寫了iOS客戶端,服務端是用王恆的版本改的:
RaspiCar
自動避障版
由於只買了一個紅外避障模塊,於是只能單邊避障,這里是代碼:
#!/user/bin/env python import RPi.GPIO as GPIO GPIO.setmode(GPIO.BOARD) GPIO.setwarnings(False) GPIO.setup(11,GPIO.OUT) GPIO.setup(12,GPIO.OUT) GPIO.setup(15,GPIO.OUT) GPIO.setup(16,GPIO.OUT) GPIO.setup(7,GPIO.IN) def t_stop(): GPIO.output(11, False) GPIO.output(12, False) GPIO.output(15, False) GPIO.output(16, False) def t_down(): GPIO.output(11, True) GPIO.output(12, False) GPIO.output(15, True) GPIO.output(16, False) def t_up(): GPIO.output(11, False) GPIO.output(12, True) GPIO.output(15, False) GPIO.output(16, True) def t_right(): GPIO.output(11, False) GPIO.output(12, True) GPIO.output(15, True) GPIO.output(16, False) def t_left(): GPIO.output(11, True) GPIO.output(12, False) GPIO.output(15, False) GPIO.output(16, True) while True: in_right= GPIO.input(7) if in_right == False: t_left() else: t_up()
