跳轉到內容

機器人/設計基礎/設計軟體

來自華夏公益教科書

機器人: 設計基礎: 設計軟體


在設計你的機器人時,有很多程式可以幫助你。從一個簡單的工具列印輪式編碼器,到CAD繪圖程式,再到機械模擬程式。

例如,AutoCAD。這種軟體用於將草圖轉換為專業化的漂亮圖紙。這種型別的圖紙是標準化的,以便於閱讀。(這意味著每種不同型別的線都有特定的含義。實線是可見邊,虛線是隱藏邊,線-虛線-線是中心線。標準還包括尺寸標註方法和圖紙中呈現的檢視型別。)當然,你可以自由使用自己的標準,但是使用工業標準,如ANSI或ISO,可以更容易地與世界各地的人分享你的計劃。雖然使用2D軟體繪製圖紙可能有點繁瑣,但結果通常比使用3D實體建模軟體更好。實體建模器仍然存在將3D模型轉換為2D圖紙並新增符合標準的適當標註的問題。

實體建模

[編輯 | 編輯原始碼]

首先

例如,SolidWorks或Pro/Engineer Pro/Engineer (維基百科:Pro/ENGINEER)。一種新的繪製零件和機器的方法。使用實體建模,你可以在3D中“構建”零件,將它們組裝在一起,然後讓軟體生成2D圖紙(聽起來比實際操作更難)。與2D CAD程式相比,最大的優勢是你可以看到完整的零件/機器,而無需實際在現實生活中進行構建。錯誤很容易在模型中找到並糾正。這些3D模型還沒有完全標準化,儘管存在數字資料的標準。目前,此軟體生成的2D圖紙並不完全符合工業標準。2D紙質圖紙仍然是行業中首選的溝通工具,意圖的清晰度非常重要。實體建模軟體傾向於生成過於複雜的圖紙檢視,並使用過於簡化的尺寸標註方法,這些方法可能無法正確傳達零件或元件的配合、形狀或功能。

氣動和液壓模擬

[編輯 | 編輯原始碼]

費斯托 有氣動和液壓模擬程式的演示版本。尋找FluidSIM Pneumatiek和FluidSIM Hydraulica。(選擇國家; 點選工業自動化; 並使用右側的搜尋欄。)
侷限性: 無法儲存或列印。大部分教學資料不包含在內。

IRAI 有免費的電氣/氣動和液壓模擬軟體演示版本: AUTOMGEN / AUTOMSIM。轉到下載 / AUTOMGEN7。

原理圖捕獲和PCB

[編輯 | 編輯原始碼]

繪製電子原理圖和設計印刷電路板 (PCB) 的軟體。這些軟體包包含用於繪製原理圖的軟體、帶符號的庫和用於繪製PCB的軟體(帶自動佈線器)。

不按特定順序

  • 免費軟體: Eagle 通常被初學者用於他們的專案,因為免費提供了一個有限版本。工具集很好地整合,並擁有龐大的業餘愛好者使用者群。但是,一旦你超越了基本設計,就需要付費購買完整版本。
  • 開源: 開源gEDA 專案 開發了一套成熟的電子設計應用程式,包括: 原理圖捕獲程式、屬性管理器、支援超過20種網表格式的網表器、模擬和數字模擬、帶自動佈線器的PCB佈局和Gerber 檢視器。該專案始於1997年,目的是編寫對個人機器人專案有用的EDA工具,但截至目前,這些工具也被業餘愛好者、學生、教育工作者和專業人士用於許多不同的設計任務。該套件在 Linux 和 OSX 上執行效果最佳,儘管一些應用程式的 Windows 版本已經發布。
  • 開源: Free PCB 是一款成熟的僅限 Windows 的開源PCB繪圖工具。

µ控制器

[編輯 | 編輯原始碼]

程式語言

[編輯 | 編輯原始碼]

µ控制器可以使用許多不同的程式語言。

  • 彙編: 每個µ控制器都可以用匯編語言程式設計。但是,µ控制器之間的差異可能很大。組合語言提供了µ控制器最大的功能,但這種功能也伴隨著代價: 難以學習,並且幾乎沒有程式碼重用。
    彙編程式碼本質上是翻譯後的機器程式碼。它只提供處理器的指令集: 加、減、可能乘、在暫存器和/或記憶體之間移動資料、條件跳轉。沒有迴圈、複雜的選定或內建I/O,如C/C++、Basic、Pascal等。
    缺點是你必須自己實現所有內容(即使對於最簡單的程式來說,也是大量工作)。
    優點是你必須自己實現所有內容(程式可以在速度和大小上都非常高效地編寫)。
    這種語言適用於高階使用者,通常只用作對緊密迴圈中程式碼的最佳化,或者將有限裝置的效能推到極限。

    學習它的理由
    • 教你如何在最低層級上了解計算機的工作原理。
    • 提供高速程式碼,消耗的記憶體少。

      避免它的理由
    • 用途有限。
    • 不可移植。
    • 很難掌握。
      免費軟體: AVR
  • C: C提供了強大的功能,但比組合語言更具可移植性。大多數µ控制器都有可用的C編譯器。µ控制器之間的差異在這裡較小,除非使用硬體。
    學習C比學習組合語言容易得多,但C並不是一種容易從頭開始學習的語言。但是,如今有許多關於這個主題的非常好的書籍。
  • 基本:對於許多微控制器,都有可用的特殊 Basic 版本。這是編寫微控制器程式碼最簡單、最快的方法,但您需要犧牲一些功能。不過,現代 Basic 編譯器可以生成非常出色的程式碼。
    • 有限的免費軟體/付費軟體:Bascom AVR 非常好的 AVR Basic 編譯器。限制為 4Kb 程式。也有適用於 8051 微控制器的版本。
    • 有限的免費軟體/付費軟體:XCSB PIC Basic 編譯器。精簡版。不支援 32 位整數和浮點數。(OS/2 WARP, Win95, Win98, Win2K, XP 和 Linux)
  • Forth
    • PFAVR (GPL) 需要外部 RAM。
    • ByteForth 荷蘭語,無需外部 RAM,還有用於 Ushi 機器人專案的構建書籍(目前僅限荷蘭語)。

進一步閱讀

程式設計師

[編輯 | 編輯原始碼]

編寫完程式後,您需要將其載入到微控制器中。如果您使用 C 或 Basic,您需要對其進行編譯。然後使用程式設計器將程式碼上傳到微控制器中。最後一步有幾種不同的方法。

  • 外部程式設計器:這是一種連線到 PC 的裝置。您需要將微控制器 IC、EEPROM 或其他儲存器 IC 插入其插座中,並讓 PC 上傳程式碼。然後將 IC 插入電路中並對其進行測試。在除錯後更新程式時可能很耗時。
  • ISP 線上程式設計:帶有微控制器的板具有一個特殊的聯結器,用於連線到 PC。連線電纜,下載程式碼,測試並重復。更現代的方法。唯一缺點:它會佔用一些板空間。並非所有微控制器都支援此功能。
  • 引導載入程式,也稱為“自程式設計”:CPU 透過任何可用的 PC 連線(不需要特殊聯結器)接受新程式,然後對其自身進行程式設計。並非所有微控制器都支援此功能。您還需要其他程式設計方法,才能將初始引導載入程式程式設計進去(告訴它要監控哪個聯結器以獲取新程式、波特率等)。

偵錯程式

[編輯 | 編輯原始碼]

現代微控制器具有片上除錯硬體,稱為 w:JTAG

各種工具

[編輯 | 編輯原始碼]

檢視 此網站 以獲取

  • Motion Applet – 用於機器人運動的差動轉向系統的路徑建模。
  • Encoder Designer – 用於編碼器輪模式的設計工具。(Wikipedia:旋轉編碼器
  • RP1 – 移動機器人模擬器。
  • Map Viewer – 用於移動機器人的地圖工具。

以及用於快速構建機器人演算法的“實驗機器人框架”。[1]

進一步閱讀

[編輯 | 編輯原始碼]
  • CAD & Linux 列出了許多在 Linux 下執行的 CAD 工具,其中一些是 GPL。
  • Linux 線上:CAD/CAM 列出了許多在 Linux 下執行的 CAD 工具,其中一些是 GPL。
  • 實用電子學/PCB 佈局 提供了有關使用 PCB 設計軟體的更多資訊。
  • Urbiforge 提供了 Urbi 的免費下載連結以及有關如何使用 Urbiscript 的教程。Urbi 是 AGPL。
華夏公益教科書