發表文章

目前顯示的是 1月, 2019的文章

C#_練習_[5]:讀取特定範圍之數據

圖片
讀取特定範圍之數據 動機 朋友做實驗時,遇到檔案中的數據有非常多筆,不過需要的數據其實只有在特定範圍內, 每次人工取出數據都很麻煩。因此設計了一個簡易型的程式幫忙他。 成果 使用者可以自己選擇檔案來源、取出之資料的儲存位置、上下限範圍, 設定完成後當程式執行完成,使用者可以同步透過程式中的畫面做監視, 確認是否真的有讀取出符合所要範圍的數據。

C#_練習_[7]:計算距離

圖片
計算距離 動機 做論文研究時,遇到多機器人如果要建立通訊連線,需要用距離來計算通訊拓譜的連結方式, 因此先建立一個簡易的模擬程式,測試是否會依我們所想的「依距離遠近,建立連結對象」。 成果 使用者可以啟動有的機器人數量,並且設定座標位置,程式會自動計算並安排連線的順序。

C#_練習_[8]:自動建立、修復通訊

圖片
自動建立、修復通訊 動機 論文研究遇到需要建立多機器人系統間的通訊,每個機器人實驗中分成兩層, 第一層是機器人透過C#程式使用WiFi做機台間的通訊; 第二層則是各機台將得到的資訊機算後,將控制指令向下傳遞到馬達, 並且獲得機台上的感測器資訊。 成果 第一版: 最陽春的版本,連線的機台需要手動設定開啟通訊埠, 並且需要手動設定連線通訊拓譜中的前面一台機台的資訊, 藉此達到建立通訊的成果。 第二版: 增加設定機台連線、傳遞方式的選項, 並且提供使用者可以直接在程式中做出基本移動路徑的規劃運算。 第三版: 將建立連線的方式改為自動化,使用者只須在一開始設定通訊拓譜的樣子、 每一層通訊層需要的機台數量先設定好,之後需要加入新機台時,只需輸入領導者機台的資訊, 通訊連線就會自動建立。這一版的通訊網路具有呼吸性的能力, 可以自動安排連線順序,並且也可以自動修復通訊時機台斷線造成「後方」機台資訊中斷的問題, 擁有自動偵查出出錯的機台、修復連線的能力。 第一版: 第二版: 第三版:

C#_練習_[6]:字串結合與分離

圖片
字串結合與分離 動機 論文研究時,遇到需要再機器人間傳遞座標及一些控制訊息的情況。 會需要將多筆資料結合後傳遞,並在接收後再分解。 於是先設計一個簡單的驗證小程式,看看自己撰寫的程式是否可行, 測試完成後,再將其加入通訊傳遞的程式中。 進度 經過測試,已完成分離、重新結合資訊的目標。

C#_練習_[4]:影像處理程式

圖片
影像處理程式 動機 朋友做研究時,常常需要判斷實驗完成後的影像,來分析實驗是否有成功。 他使用的是灰階的圖片,判斷的方式是計算圖片中出現的深黑色圓點直徑大小。 不過每次的計算都會需要花上許多時間,因此想設計一個可以自動計算的程式。 程式設計成三個階段: 第一階段: 先做出一個可以調整灰階程度的影像處理程式。 第二階段: 增加可以自動過濾背景,僅留下圓點的能力。 第三階段: 加入自動計算圓點直徑、平均直徑的能力。 進度 目前已完成第一階段的程式。 使用者可以將任一種圖片由電腦中讀入,並且調整灰階的程度。

C#_練習_[3]:對發票程式

圖片
對發票程式 動機 桌面上、皮包中時常會累積許多發票,有時沒整理好, 兌統一發票號碼時都還會需要先整理一次,常常會覺得不太方便。 想設計一個程式,可以掃描發票後,直接紀錄發票的號碼, 並在每次要對號碼時,直接將公告的號碼輸入程式, 既可立刻知道有哪些發票中獎、累積中的獎金數量。 計畫是將程式編寫分成兩階段:: 第一階段: 用手動輸入發票號、得獎號碼。 第二階段: 結合視覺處理,並將輸入發票號的部分改成自動記錄。 進度 目前已完成第一階段的程式。 用手動輸入發票號、得獎號碼,若有中獎的發票,程式也會做出提醒。

C#_練習_[2]:樂透遊戲

圖片
樂透遊戲 動機 每天中午吃飯時,總是會不知道該吃什麼,通常跟朋友一起要吃飯時, 都會需要想很久才能下決定,如果可以有一個程式能夠幫我們做選擇, 應該會讓我們更快吃到午餐。 不過午餐有許多種類,如:炒麵、炒飯、火鍋…等等, 選項會需要做到許多分類,因此想說先由最常在新聞上看到的樂透遊戲先試試。 計畫是將這個目標分成兩階段: 第一階段: 先做出基本樂透的隨機選號效果、跳出祝福中獎的對話框。 第二階段: 改寫成可以記錄前幾天吃的午餐類型,並且做出隨機推薦的程式。 進度 目前已完成第一階段的程式。

C#_練習_[1]:飛鏢遊戲

圖片
飛鏢遊戲 動機 與朋友常常去打飛鏢,飛鏢店的機台,提供玩家許多種玩法,不同類型的玩法都會有不同的規則。 看到飛鏢店的電子靶台,想說或許自己也可以做一個來玩,既省錢又更有趣味。 計畫是將這個目標分成兩階段: 第一階段: 設計一個手動計分的程式。 第二階段: 結合視覺處理,將程式更新成自動計分的版本。 進度 目前已完成第一階段的程式。 一開始玩家可以選擇要玩的分數類型、玩家人數。 選擇完後,每位玩家開始輪流丟擲飛鏢,一回合可以丟三鏢。 (程式中的飛鏢遊戲規則皆是參考實際的規則。) 每一次累積的分數,輸入程式後,程式會計算剩下所需達到的分數總和, 若玩家的累積分數超過所選的分數類型,程式會自動將上一次剩下的分數還原, 只有當玩家將分數剛好扣除,才算結束。 若有玩家提前結束,程式也會自動跳出「遊戲結束,XX玩家獲勝」 及「其他玩家剩餘分數」等資訊。 若玩家都沒有完成,則在局數到達後, 程式也會自動跳出「所有玩家剩餘分數」等資訊。

文章分類

ROS系列    環境安裝           ROS_安裝_Ubuntu[1]:分割磁碟及建立開機碟           ROS_安裝_Ubuntu[2]:安裝           ROS_安裝_Ubuntu補充[1]:製作Ubuntu開機隨身碟           ROS_安裝_Ubuntu補充[2]:進入BIOS更改開機    增加感測器           ROS_深度攝影機_Realsense2_camera[1]:安裝及測試           ROS_增加感測器_Hokuyo[1]:安裝封包           ROS_增加感測器_Hokuyo[2]:實際測試           ROS_增加感測器_Hokuyo[3]:修改模擬中Turtlebot[1]           ROS_增加感測器_Hokuyo[4]:修改模擬中Turtlebot[2]    建立地圖           ROS_建地圖_Rtabmap[1]:安裝及測試           ROS_建地圖_Rtabmap[2]:使用於D435           ROS_建地圖_Octomap[1]:安裝及測試           ROS_建地圖_Octomap[2]:使用於D435    模擬應用           ROS_建立新地形_Xacro[1]:建立新模擬環境           ROS_建立多台_[1]:複製多台           ROS_建立多台_[2]:各台改變參數    專題練習           ROS_練習_[1]:使用雷射資訊定位 C#系列    專題練習           C#_練習_[1]:飛鏢遊戲           C#_練習_[2]:樂透遊戲           C#_練習_[3]:對發票程式           C#_練習_[4]:影像處理程式           C#_練習_[5]:讀取特定範圍之數據           C#_練習_[6]:字串結合與分離           C#_練習_[7]:計算距離           C#_練習_[8]:自動建立、修復通訊