✔ 最佳答案
1. 其實像看卡通一樣的用一台真正的電腦去接收sensor 的資料,再用回在電腦上所寫的program去做控制 / 手動在program中做控制係咪比單單用micro-controller 難呢?
如果是十分簡單的系統, 直接用電腦控制是可行, 筆者曾經試過用電腦的parallel port(訊號電平是0V - 5V)來控制1塊2*16characters的LCD module. 但於稍為複雜的要求, 例如輸入輸出的level, 輸入輸出是analog或digital, 訊號的timing要求等等, 單是利用com port或者parallel port是不能直接應付的.
2. 用電腦控制咪可以令個program做到更難的運算囉?
電腦的CPU的確比PIC之類的微控制器powerful得多. 所以如果需要一些數學運算, 大可以交俾佢做. 但是去到機械手腳的直接控制, 很多時候需要很準確的timing, 例如pulse width, 用microcontroller 就可以做得有效得多. 尤其是現今的電腦, OS通常是Windows的, CPU的工作大多是"time sharing", 因此要即時及準確控制機械人, 實在難以做到的.
3. 咁接PC做野係咪都一樣要有controller搞返d 控制摩打呢?還是可以用電腦直接做到?
基於上述原因, 用microcontroller來控制機械人是比較穩妥的.
4. 通常會用什麼東西接的?
於microcontroller線路板上, 加一粒叫MAX232的IC(如果該microcontroller 是5V I/O). MAX232是作為電腦COM port和microcontroller 的 UART的interface. 只要在電腦行的program把COM port設定好, 加上microcontroller 的firmware, 再用一條COM port交叉cable將PC與microcontroller連接, 就可以控制裕如. 當然這些program, firmware及hardware, 就要靠自己設計了.
2006-12-05 00:46:03 補充:
我未用過linux. 不過道理都是一樣的. 請問個摩打是否servo motor? 若果是的話, 就應該要microcontroller, 這是因為servo motor需要不停輸入準確pulse width的訊號, 否則不能固定於一個位置. 一部PC除非什麼都不做, 包括進入系統, 否則難以長期作出不停準確的輸出,