RoBoard魔人的機器人日誌

2011/12/22

[練習] graph走訪程式

當一台機器人 想要讓他走到所有想讓他去的地方 那就需要利用走訪的程式 (本魔承認有點硬要扯到機器人...) 總之 來介紹一下兩種走訪方式 深度優先搜尋(depth - first search) 簡稱DFS 簡單的說就是先找到最深的路  再退回來走其他的路 像我的範例 若是用深度優先 他會從1 -> 2 -> 4 -> 3 然後沒路了   退回4  再走5     再往後退   都沒路就結束 以下為DFS的code #include...
Share:

2011/12/16

[練習] 數獨程式

用NXT做的數獨機器人 前面比較繁瑣的工作是判斷位置 以及掃描出數字 將9*9表格讀入機器後就可以開始進行運算 藉此機會 就來研究看看解數獨的程式該如何寫吧 首先要瞭解規則 在1~9行內絕對只有1~9的數字 且不重複在1~9列內絕對只有1~9的數字 且不重複以每9格(正方) 為單位  9格內也只有1~9的數字 且不重複 例如: 1 2 3 4 5 6 7 8 94 5 6 7 8 9 1 2 37 8 9 1 2 3 4 5 62 3 4 5 6 7 8 9 15 6 7 8 9 1 2 3 48 9 1 2 3 4 5 6 73 4 5 6 7 8 9 1 2 這就算是一個數獨的答案 然而數獨的每個題目...
Share:

2011/12/8

[推薦] 在blogger裡使用google-code-prettify

我想會來到魔人這邊的訪客大部分應該都對機器人有興趣 甚至有已經接觸過機器人的吧? 成品作出來之後當然會想拿出來和大家分享囉!! 機器人免不了要經過coding的過程 所以這邊推薦一個蠻好用的程式碼高亮度顯示程式 安裝步驟按照下面作計可以囉~ 首先到Blogger的[資訊主頁]   選擇[設計] 然後找到[修改HTML] 將以下所有內容貼至<head>至</head>之間 <link href='http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css'...
Share:

2011/11/30

[延伸範例] 用wii搖桿控制小機械手臂

 小機械手臂 手臂上共有4顆馬達為KONDO的KRS-786馬達 有feedback的功能 而前端的DMP小手之前介紹過 所以這邊不多說 介紹影片: 第一次上鏡頭有點緊張啦... 啟動的時候會震動是因為手臂下方過輕... 原本想要塞一些東西的  不過還沒找到適合的物品 以及剪刀石頭布的布  因為正常狀態下就是布了  所以我沒有多做 附註: DMP小手雖然是三個自由度   但還是有密技可做出奇怪的手勢(請自行想像) 以下是code: #include...
Share:

2011/11/29

[範例] 讀取wii搖桿

讀取wii搖桿之值 螢幕上顯示的有toy X,Y 為搖桿兩軸 accel X,Y,Z 為加速度三軸 button Z,C 為兩顆按鈕 以下為code #include "stdio.h" #include "conio.h" #define USE_COMMON #include "roboard.h" #include "roboard_dll.h" const unsigned char wii_addr = 0x52; int joy_x_axis; int joy_y_axis; int accel_x_axis; int accel_y_axis; int accel_z_axis; int...
Share:

2011/11/12

[教學] 如何讀取wii搖桿

上一次有提到wii的搖桿要如何接上I2C的線 這次就說明一下如何讀取 首先可以看到 http://www.windmeadow.com/node/42 這個網站 他有完整的說明 不過我這邊再仔細的說一次 WII搖桿的Speed 根據網站上寫的 Since the nunchuck uses "Fast" I2C, we will need to change the default speed: #define TWI_FREQ 400000L.可以得知 speed_mode為fast bps為400000L  WII搖桿傳輸的基本設定 文件中提到 For the Arduino...
Share:

[教學] 如何wii搖桿接上I2C

wii搖桿接上I2C 由於WII的搖桿傳輸是用I2C   所以Roboard沒道理不能控制他 先前已經介紹過G146 現在介紹的為wii的搖桿 要有wii搖桿, I2C線材, 最重要的RB一台 首先先告訴各位如何將wii接上I2C的線材 各位可以用wiki看到wii腳位的對應圖http://wiibrew.org/wiki/Wiimote/Extension_Controllers 這裡很清楚的可以看到 wii上有6個腳位 分別為 SCL   ...
Share:

2011/10/20

[教學] 如何控制RS0263-DMP小手

DMP小手 (RS0263*3) RS0263為RoBoard的馬達 必須用RC servo控制馬達轉動 RC servo的控制原理 利用 PWM pulse 的寬度指定 servo 轉動的位置 controller circuit 控制 servo 轉到指定的位置 feedback potentiometer 會將 servo 目前的位置迴授給控制器 由於RS0263沒有feedback的功能 所以並不會將servo的位置回傳 腳位相對位置 RB100有24個PWM 而RB110只有16個PWM但其實還是十分好分辨的 靠外側的腳位為地(GND)...
Share:

2011/10/17

[教學] 如何控制RM-G146陀螺儀

RM-G146    控制G146必須要用I2C去控制 因為我這邊使用的範例為RB110  所以沒有特別再去弄線材 首先必須知道的資訊陀螺儀的位址 在0xD0以及陀螺儀的XYZ軸的位址AddrHex   AddrDecimal     Register Name         1D            ...
Share:

2011/10/7

[教學] 如何控制Bioloid AX-12馬達

上一個星期已經告訴過各位AX-12是如何傳輸的 那現在要控制其實已經差不遠了 首先必須要有一條com3轉接AX-12的轉接線 然後就可以開始撰寫程式部分了 首先要先將專案屬性先設定好 組態先選擇為Release (因為Debug會出現問題) 要把組態結構 -> C/C++ -> 一般 其中的 "其他Include目錄" 將他指定到RoBoIO-bin-v1.8-winxp\Include 然後組態結構 -> 連結器 -> 一般 中的 "其他程式庫目錄"  將他指定RoBoIO-bin-v1.8-winxp\Lib\VC2008 最後將組態結構 ->...
Share:

2011/10/1

[教學] Bioloid AX-12馬達如何傳輸

如果想要控制Bioloid AX-12馬達 首先必須先了解Bioloid AX-12馬達是如何傳輸的 可以看AX-12的datasheet比較容易理解 正如上圖 首先會先傳兩個0XFF告訴馬達要開始了 然後第三個指令封包ID 是要確認傳送給此ID的馬達 接著為LENGTH 是告訴馬達開始接收連續幾個封包 INSTRUCTION是決定要讀出,寫入等 接下來的幾個是下指令的部分 首先是指令的Address 可以把他想成程式中的指標 然後接下來的是將Address指到的後面N個改為給的值 最後的CHECK...
Share:

2011/9/20

[教學]如何用fritzing做一個RoBoard的樣板

首先進入fritzing的官網 將fritzing下載下來 http://fritzing.org/download/ 開啟程式之後首先會看到麵包板檢視 然後需要新增一個RoBoard的元件 在右下角有一個元件的圖片 選取新增 會出現新元件的內容 此時將名字.圖檔.說明...等等輸入 新增完後必須新增連接器 才可以在frizing裡面使用 ...
Share:
頁面 1 / 16: 1234 下一頁
技術提供:Blogger.

追蹤者