0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于雙核Arm Cortex M0+RP2040硬件開發(fā)

工程師兵營(yíng) ? 2022-07-14 14:50 ? 次閱讀

一、概述

樹莓派Pico基于其雙核Arm Cortex M0+芯片RP2040。對(duì)比可發(fā)現(xiàn),這一顆芯片,相較于傳統(tǒng)的樹莓派,更偏向一個(gè)做控制的MCU單片機(jī),其豐富的外設(shè)IO,精巧的結(jié)構(gòu),很難讓人相信這也是樹莓派系列。

該項(xiàng)目的想法是想突出Pico的控制性能,同時(shí)又繼續(xù)發(fā)揮樹莓派現(xiàn)有的優(yōu)良生態(tài)環(huán)境的優(yōu)勢(shì),放開膽子,兩個(gè)方面的優(yōu)勢(shì)相結(jié)合。打造一個(gè)五子棋AI對(duì)戰(zhàn)系統(tǒng),即:

(1)圖像識(shí)別五子棋盤;

(2)與PC通訊調(diào)用相關(guān)算法和庫(kù),計(jì)算下一步落子;

(3)Pico通過IO控制機(jī)械結(jié)構(gòu),放置棋子,實(shí)現(xiàn)真正意義上的人機(jī)對(duì)弈。

項(xiàng)目新意:

一方面,在軟件編程上,可以基于該項(xiàng)目平臺(tái)學(xué)習(xí)人工智能、深度學(xué)習(xí)相關(guān)的算法知識(shí);另一方面,在硬件方面,可以學(xué)習(xí)IO控制機(jī)械臂、調(diào)用攝像頭等外設(shè)方面的硬件知識(shí)和技能。該項(xiàng)目軟硬相結(jié)合,后續(xù)再開發(fā)、在學(xué)習(xí)的潛力較大。

五子棋的算法較圍棋簡(jiǎn)單,也有較多現(xiàn)成的庫(kù)可參考。該項(xiàng)目就相當(dāng)于一個(gè)迷你版的阿爾法狗。聽起來是不是很酷!

二、技術(shù)路線

1、圖像識(shí)別

目前攝像頭初步計(jì)劃選用:OV7670攝像頭(FIFO)

(圖片見附件)

Foe42geIIxNRHIvoNOwGr_EEf8P-

該攝像頭集成度高,調(diào)用很簡(jiǎn)單,且有一定的實(shí)際工程經(jīng)驗(yàn)作為參考。該攝像頭清晰度做圖像識(shí)別已經(jīng)足夠。

在算法方面,采用較為成熟的Ganny算子邊緣檢測(cè)和圖像灰度處理。鑒于Pico資源有限,目前考慮Pico作為一個(gè)中繼或者是做初步處理的功能。主要算法可以通過串口通訊將數(shù)據(jù)傳遞給PC端上位機(jī),上位機(jī)計(jì)算后識(shí)別五子棋棋子坐標(biāo)及其棋局情況。

2.下棋算法

下棋算法基于Python編程,發(fā)揮 Python強(qiáng)大的能力及生態(tài)。初步可調(diào)用現(xiàn)有的一些五子棋算法,實(shí)現(xiàn)基本功能。

更進(jìn)一步地,可以在此基礎(chǔ)上,加入AI算法和深度學(xué)習(xí),在PC端訓(xùn)練出一個(gè)五子棋AI,計(jì)算下一步落子。該過程可開發(fā)程度較高,后期可長(zhǎng)久持續(xù)的優(yōu)化開發(fā),可作為一個(gè)學(xué)習(xí)工具。

最終可以實(shí)現(xiàn)對(duì)弈對(duì)手難道選擇:簡(jiǎn)單、中等、困難、挑戰(zhàn)AI等模式。

3.下棋執(zhí)行

PC上位機(jī)計(jì)算得到下一步落子的位置坐標(biāo)后,將信息通過串口傳到Pico。Pico通過IO口控制機(jī)械臂結(jié)構(gòu),在棋盤相應(yīng)位置放置五子棋。

為節(jié)省資源和保證落子的準(zhǔn)確性,機(jī)械臂采用X-Y二維移動(dòng)臂+放置臂兩個(gè)結(jié)構(gòu)組成

X-Y二維移動(dòng)臂采用2個(gè)步進(jìn)電機(jī),占用4個(gè)IO;

放置臂采用2個(gè)舵機(jī),占用4個(gè)IO;

(機(jī)械臂 圖片見附件)

FiKNajTLfXfHHKbIzI3X8Fgk1zqV

為保證落子的準(zhǔn)確性,提前輸入并校準(zhǔn)棋盤各坐標(biāo)的位置(棋盤各坐標(biāo)對(duì)應(yīng)平面X-Y軸兩個(gè)步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)量)

如有必要,可采用攝像頭輔助識(shí)別落子位置,增加落子準(zhǔn)確性。形成閉環(huán)。

三、可行性與項(xiàng)目?jī)?yōu)勢(shì):

1.OV7670攝像頭有使用經(jīng)驗(yàn),并有大量的現(xiàn)成資料;

2.機(jī)械臂的控制有項(xiàng)目經(jīng)驗(yàn)可參考;

3.五子棋算法有較多可參考的算法和資料,以及有相關(guān)的五子棋算法庫(kù)可通過Python調(diào)用。相對(duì)于圍墻,五子棋算法簡(jiǎn)單,可學(xué)習(xí)性和實(shí)現(xiàn)性較強(qiáng)。

4.Pico 的外設(shè)控制豐富:30*GPIO管腳,16*PWM通道,足以實(shí)現(xiàn)上述的控制方面的要求;樹莓派及其基于microPython開發(fā)為算法的深度開發(fā)提供了強(qiáng)大的生態(tài)和資源,是其他單片機(jī)不可比擬的。

5.該項(xiàng)目平臺(tái)打造之后,也是一個(gè)深入軟硬件學(xué)習(xí)的平臺(tái)。

(1)硬件方面:學(xué)習(xí)IO、機(jī)械臂控制(控制舵機(jī)、步進(jìn)電機(jī));攝像頭調(diào)用;串口通訊等相關(guān)硬件知識(shí)。

(2)軟件方面:除了Pico的片上編程之外,還能學(xué)習(xí)上位機(jī)編程、Python編程、AI算法、機(jī)器學(xué)習(xí)等深度的軟件編程知識(shí)。是一個(gè)人工智能的學(xué)習(xí)平臺(tái),可以用來不斷訓(xùn)練和打磨五子棋AI模型。

這是一個(gè)迷你版的阿爾法狗,同時(shí)也是真正意義上和你面對(duì)面下棋的AI。

Fi0VhRhuMTh5vtBkwX7ZHGXt4bI5
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 攝像頭
    +關(guān)注

    關(guān)注

    59

    文章

    4760

    瀏覽量

    94457
  • 樹莓派
    +關(guān)注

    關(guān)注

    116

    文章

    1679

    瀏覽量

    105273
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    在樹莓派Pico RP2040上怎樣使用MicroPython呢?

    RP2040 是一款由樹莓派公司設(shè)計(jì)的 32 位 ARM Cortex-M0+ 微控制器芯片,于 2021 年 1 月發(fā)布,作為樹莓派
    的頭像 發(fā)表于 11-08 14:29 ?2654次閱讀
    在樹莓派Pico <b class='flag-5'>RP2040</b>上怎樣使用MicroPython呢?

    樹莓派Pico 2發(fā)布,搭載RP2350RISC-V和Arm Cortex-M33微控制器!

    2024 年 8 月 8 日,樹莓派最新發(fā)布了 Pico 2 微控制器級(jí)產(chǎn)品 ,是一款基于新型 Raspberry Pi RP2350 RISC-V 或
    發(fā)表于 08-13 10:07

    怎樣去設(shè)計(jì)基于ARM Cortex-M0的MCU

    知網(wǎng)鏈接:基于ARM Cortex-M0的MCU設(shè)計(jì)及應(yīng)用
    發(fā)表于 11-10 08:51

    RaspberryPi Pico CLion開發(fā)環(huán)境配置的相關(guān)資料推薦

    Cortex-M0+內(nèi)核的單片機(jī),如果你使用過STM32或者Arduino,并且熟悉C/C++,那么相信Pico最小系統(tǒng)板將會(huì)是你所入迷的下一個(gè)單片機(jī)開發(fā)板。硬件上,采用Raspberry Pi 官方自主研發(fā)的
    發(fā)表于 12-10 06:54

    ProMicro-RP2040印刷電路板資料分享

    描述ProMicro-RP2040 印刷電路板RP2040 是 Raspberry Pi Foundation 的 32 位 ARM Cortex
    發(fā)表于 06-22 06:50

    使用RP2040設(shè)計(jì)一個(gè)迷你板

    和產(chǎn)品。RP2040芯片2021 年 2 月,RP2040 進(jìn)入市場(chǎng)。該芯片建立在 Arm cort
    發(fā)表于 09-02 06:37

    【BPI-Pico-RP2040 開發(fā)板】+ 開箱測(cè)評(píng)與Arduino開發(fā)點(diǎn)燈測(cè)試

    BPI-Pico-RP2040板載資源如下 ARM Cortex M0+ CPU 內(nèi)核(高達(dá)
    發(fā)表于 03-17 19:19

    RP2040

    RP2040是一種基于ARM Cortex-M0+核心的微控制器芯片,由Raspberry Pi公司設(shè)計(jì)和生產(chǎn)。它主要用于樹莓派計(jì)算模塊和樹莓派相機(jī)模塊V2等產(chǎn)品中,同時(shí)也適用于各種低功耗物聯(lián)網(wǎng)設(shè)備
    發(fā)表于 09-15 09:04

    基于Cortex-M4/M0架構(gòu)的非對(duì)稱數(shù)字信號(hào)控制器L

      恩智浦半導(dǎo)體NXP Semiconductors N.V. 近日宣布推出LPC4000微控制器,該系列產(chǎn)品也是全球首次采用ARM Cortex-M4和Cortex-M0
    發(fā)表于 11-03 09:34 ?2342次閱讀

    ME32x系列是內(nèi)嵌ARM Cortex M0/M3的32位微控制器

    概述ME32x系列是內(nèi)嵌ARM Cortex M0/M3的32位微控制器。
    的頭像 發(fā)表于 03-31 15:14 ?2475次閱讀

    ADSP-CM41x混合信號(hào)控制處理器,帶ARM Cortex-M4/ARM Cortex-M0和16位ADC硬件參考

    ADSP-CM41x混合信號(hào)控制處理器,帶ARM Cortex-M4/ARM Cortex-M0和16位ADC硬件參考
    發(fā)表于 05-09 10:45 ?1次下載
    ADSP-CM41x混合信號(hào)控制處理器,帶<b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M</b>4/<b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M0</b>和16位ADC<b class='flag-5'>硬件</b>參考

    基于ARM Cortex-M0的MCU設(shè)計(jì)及應(yīng)用

    知網(wǎng)鏈接:基于ARM Cortex-M0的MCU設(shè)計(jì)及應(yīng)用
    發(fā)表于 11-05 15:35 ?18次下載
    基于<b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M0</b><b class='flag-5'>核</b>的MCU設(shè)計(jì)及應(yīng)用

    RaspberryPi Pico CLion開發(fā)環(huán)境配置

    Cortex-M0+內(nèi)核的單片機(jī),如果你使用過STM32或者Arduino,并且熟悉C/C++,那么相信Pico最小系統(tǒng)板將會(huì)是你所入迷的下一個(gè)單片機(jī)開發(fā)板。硬件上,采用Raspberry Pi 官方自主研發(fā)的
    發(fā)表于 11-26 19:21 ?19次下載
    RaspberryPi Pico CLion<b class='flag-5'>開發(fā)</b>環(huán)境配置

    ProMicro-RP2040印刷電路板

    RP2040 是 Raspberry Pi Foundation 的 32 位 ARM Cortex-M0+ 微控制器集成電路。同時(shí)作為 Raspberry Pi Pico 板的一部
    發(fā)表于 07-01 15:01 ?11次下載
    ProMicro-<b class='flag-5'>RP2040</b>印刷電路板

    【試用報(bào)告】RP2040上的MicroPython環(huán)境中多線程編程

    介紹 BPI-Pico-RP2040官方介紹如下: 其核心是RP2040,采用的是ARM Corte
    的頭像 發(fā)表于 04-18 09:15 ?4789次閱讀