機器人/設計基礎/設計軟體
機器人學:設計基礎:設計軟體
在設計你的機器人時,有很多程式可以幫助你。從一個簡單的工具來列印輪式編碼器,到CAD繪圖程式,再到機械模擬程式。
例如AutoCAD。這種型別的軟體用於將粗略的草圖轉換成專業的漂亮圖紙。這種型別的圖紙是標準化的,以便於閱讀。(也就是說,每種型別的線條都有特定的含義。實線是可見的邊,虛線是隱藏的邊,點劃線是中心線。標準還包括尺寸標註方法和圖紙中呈現的檢視型別。)當然,你可以自由地使用自己的標準,但是使用行業標準,例如ANSI或ISO,可以更容易地與世界各地的其他人分享你的計劃。雖然使用2D軟體進行繪圖可能稍微繁瑣一些,但結果通常比使用3D實體建模軟體更好。實體建模器仍然存在將3D模型轉換為2D圖紙並根據標準新增適當符號的問題。
- GPL CAD軟體:QCad 維基百科:QCad
- GPL向量繪圖軟體:Inkscape 維基百科:Inkscape
例如SolidWorks 或 Pro/Engineer Pro/Engineer (維基百科:Pro/ENGINEER)。一種新的繪製零件和機器的方式。使用實體建模,你可以用3D“構建”零件,將它們組合成一個裝配體,然後讓軟體生成2D圖紙(聽起來比實際操作更難)。與2D CAD程式相比,其主要優勢在於,你可以看到完整的零件/機器,而無需在現實生活中實際構建它。在模型中,錯誤很容易被發現和改正。這些3D模型還沒有完全標準化,儘管存在數字資料的標準。目前,這種軟體生成的2D圖紙並不完全符合工業標準。2D紙質圖紙仍然是工業界首選的溝通工具,清晰的意圖非常重要。實體建模軟體往往會生成過於複雜的繪圖檢視,並採用過於簡化的尺寸標註方法,這些方法可能無法正確傳達零件或裝配體的配合、形狀或功能。
費斯托 有氣動和液壓模擬程式的演示版本。查詢FluidSIM Pneumatiek 和 FluidSIM Hydraulica。(選擇國家;點選工業自動化;使用右側的搜尋欄。)
限制:無法儲存或列印。大部分教學資料沒有包含在內。
IRAI 提供電動/氣動和液壓模擬軟體的免費演示版本:AUTOMGEN/AUTOMSIM。前往下載/AUTOMGEN7。
-
Eagle 原理圖繪製 -
Eagle 印刷電路板設計
用於繪製電子原理圖和設計印刷電路板(PCB)的軟體。這些軟體包包含用於繪製原理圖的軟體,帶有符號的庫,以及用於繪製PCB(帶有自動佈線器)的軟體。
按任意順序
- 免費軟體:Eagle 通常被初學者用於他們的專案,因為有一個有限的免費版本可用。工具集很好地整合,並且擁有龐大的業餘愛好者使用者群。但是,一旦你超過了基本設計,你需要為完整版本付費。
- 開源:開源的 gEDA 專案 開發了一套成熟的電子設計應用程式,包括:原理圖繪製程式、屬性管理器、支援超過20種網表格式的網表生成器、模擬和數字模擬、帶有自動佈線器的PCB佈局,以及Gerber檢視器。該專案於1997年啟動,旨在編寫對個人機器人專案有用的EDA工具,但截至目前,這些工具也被業餘愛好者、學生、教育工作者和專業人士用於許多不同的設計任務。該套件在Linux和OSX上執行效果最佳,儘管某些應用程式的Windows版本已經發布。
- 開源:Kicad,維基百科:Kicad 包括原理圖繪製和PCB佈局
- 開源:Free PCB 是一款成熟的Windows專用開源PCB繪圖工具。
- IntelligentCad.org 有一些指向FPGA和PCB設計工具的連結(GPL)
微控制器有很多不同的程式語言可用
- 彙編:每個微控制器都可以用匯編語言程式設計。但是,微控制器之間的差異可能很大。組合語言為微控制器提供了最大的功能,但這種功能是有代價的:難以學習,而且幾乎沒有程式碼重用。
彙編程式碼本質上是翻譯後的機器程式碼。它只提供處理器的指令集:加法、減法、可能乘法、在暫存器和/或記憶體之間移動資料、條件跳轉。沒有迴圈、複雜的判斷或內建的I/O,如C/C++、Basic、Pascal等。
缺點是你必須自己實現所有功能(即使是最簡單的程式,也是大量的程式碼)。
優點是你必須自己實現所有功能(程式可以在速度和尺寸上都實現極高的效率)。
這種語言面向高階使用者,通常僅用作對緊湊迴圈中的程式碼的最佳化,或者用於將效能有限的裝置的效能發揮到極致。
學習它的理由- 教你如何在最低層瞭解計算機的工作原理。
- 提供高速程式碼,佔用少量記憶體。
避免它的理由 - 用途有限。
- 不可移植。
- 非常難以掌握。
免費軟體:AVR
- C:C語言提供了強大的功能,但比組合語言更具可移植性。對於大多數微控制器,都有C編譯器可用。在這裡,微控制器之間的差異較小,除了使用硬體之外。
學習C比學習彙編容易得多,但C並不是一種從頭開始就容易學習的語言。然而,如今已經出版了很多關於這方面的優秀書籍。- 免費軟體:用於AVR Studio軟體的GCC工具
- Basic:對於許多微控制器,都有特殊的Basic版本可用。這是對微控制器進行編碼最簡單、最快捷的方式,但你需要犧牲一些功能。不過,現代Basic編譯器可以生成非常出色的程式碼。
- 有限的免費軟體/付費軟體:Bascom AVR 非常好的用於AVR的Basic編譯器。限制為4Kb程式。還有一個版本可用於8051微控制器。
- 有限的免費軟體/付費軟體:XCSB PIC Basic編譯器。精簡版。不支援32位整數和浮點數。(OS/2 WARP、Win95、Win98、Win2K、XP和Linux)
- Forth
進一步閱讀
編寫完程式後,需要將其載入到微控制器中。 如果你使用 C 或 Basic,則需要編譯它。 然後使用程式設計器將程式碼上傳到微控制器。 最後一步有幾種不同的方法。
- 外部程式設計器:這是一種連線到 PC 的裝置。 你需要將微控制器 IC、EEPROM 或其他記憶體 IC 插入其插座,然後讓 PC 上傳程式碼。 之後,將 IC 插入電路並進行測試。 當除錯後更新程式時,可能會很費時間。
- ISP(系統內程式設計):帶有微控制器的板具有一個特殊的聯結器,用於連線到 PC。 連線電纜,下載程式碼,測試並重復。 更加現代的方法。 唯一的缺點:它會佔用一些板空間。 並非所有微控制器都支援這種方法。
- 引導載入程式,也稱為“自程式設計”:CPU 透過任何可用的 PC 連線(無需特殊的聯結器)接收新程式,然後對自己進行程式設計。 並非所有微控制器都支援這種方法。 並且你還需要其他一些程式設計方法,才能將初始引導載入程式程式設計進去(告訴它要監視哪個聯結器以獲取新程式、波特率等)。
現代微控制器具有片上除錯硬體,稱為 w:JTAG。
有關
- 運動小程式 - 用於機器人運動的差速轉向系統的路徑建模。
- 編碼器設計器 - 用於編碼器輪圖案的設計工具。(維基百科:旋轉編碼器)
- RP1 - 一個移動機器人模擬器。
- 地圖檢視器 - 用於移動機器人的地圖工具。
以及用於機器人演算法快速原型的“實驗機器人框架”。[1]
- CAD & Linux 列出了許多在 Linux 下執行的 CAD 工具,其中一些是 GPL 許可的。
- Linux 線上:CAD/CAM 列出了許多在 Linux 下執行的 CAD 工具,其中一些是 GPL 許可的。
- 實用電子/PCB 佈局 提供了有關使用 PCB 設計軟體的更多資訊。
- Urbiforge 提供了 Urbi 的免費下載連結以及有關如何使用 Urbiscript 的教程。 Urbi 是 AGPL 許可的。