2017-07-31 37 views
0

嘿,所有我是剛剛畢業的機械工程學士學位,並且正在研究一個正在進入CS領域的項目,並且在1990年代的主板終於退出之後,我正在尋找改造跑步機。微控制器和低級編程新手,這可能嗎?

我有以下資產:

  • 跑步機破碎的主板(測試的所有其他組件和功能)相似this
  • 極地心臟監測儀
  • 觸摸屏顯示器。
  • 多個硬盤,遊戲杆和其他USB配件。
  • NI LabVIEW全套套件
  • 2功能(2000年代)沒有操作系統的筆記本電腦。
  • Solidworks的
  • 本地製造商的空間

我有幾個主要目標和舒展的目標,我想了一些意見,這應該是很容易實現,並且會帶我a research team and 5 years

這應該很簡單...對嗎?

  1. 獲取PID控制器的設置與微控制器在[N]英里旋轉跑步機帶,並調整傾斜至[N2]基於硬件轉盤,旋鈕度,或按鈕物理輸入

    * get microcontroller to read motor encoders for speed/incline 
    
    * get microcontroller to recognize input from a physical button 
    
    * get microcontroller to compare current speed/incline values with target values 
        and increase/decrease current to motors appropriately 
    
    * have microcontroller display info on LCD screen 
    
  2. 從物理輸入變爲觸摸屏輸入。

    *Figure out what they're doing [在下面的評論鏈接1] and adjust for what I currently have (or buy fresh if absolutely necessary)

    * change input from hardware buttons to software <up> <down> arrows 
    
    * Add hardware E-stop 
    

它看起來像有很多庫和設備的在線正在做的這兩個步驟的元素,將它們組合起來可能是困難的,因爲以我的經驗不足,但硬件和軟件不難。

中等難度(我看到一個人做一次)

  • 上傳某種Linux發行版或其他操作系統的到我的微控制器,並把我的程序到應用程序。

    *Learn how to install Linux/Other OS 
    
    *Compile program as application 
    
    *Section off the bottom of the LCD Screen as a treadmill specific taskbar 
    
    * (bonus round) Make treadmill specific taskbar able to be moved and snapped 
        (similar to the windows taskbar) 
    
  • 從心臟監測儀添加反饋給跑步機心臟速率PID控制

    *SparkFun has a Single Lead Heart Rate Monitor - AD8232 [Link 2] write an application 
    to read the monitor and control the treadmill program accordingly. 
    
  • 我覺得這在理論上是可能的,但我真的不知道我會怎樣去做吧。我也看到這些任務中的任何一個都可能比我想象的要複雜得多。

    硬模式(這可能嗎?)

    1. 戴上智能手機樣式功能。

      * Install Android OS onto microcontroller 
      
      * Install Google Play store 
      
      * dedicate a set of pixels to the "treadmill OS" and the rest to the "smartphone." 
      
      * Add some sort of hook for the "treadmill OS" into the Android OS and maybe write 
      a few apps to control the treadmill based on [arbitrary value in app] 
      

    如果我能做到這一點,爲什麼市場上所有的超級昂貴和先進的跑步機在其軟件方面如此糟糕?


    對於我的技能,我還算不錯如何物理把一切融合在一起(但需要進行一些郵寄到電子堆棧交換爲如何得到的東西智能手機的大小來調節正確120V 60HZ功率)

    我的主要問題是其中有多少是真正可以想象做,如果我這樣做在滿足我的一切願望的一種方式,我應該:

    A)看由一個特定類型的微控制器來完成所有這些工作(我們將欣賞這些建議)

    B)開始與我的兩個筆記本電腦之一,並寫了一個微控制器,它只是做簡單的東西

    ℃的接口)在我的筆記本電腦之一安裝Android操作系統,並開始寫一個[跑步機上的應用程序]

    D)做一些我沒有想到的事情,因爲這不是我的領域。

    ps:雖然這是一個DIY項目,但在編碼方面,我真的不想重新發明輪子,所以請讓我知道任何可能有用的圖書館或資源

    +0

    [鏈接1](https://www.youtube.com/watch?v=eSKmG1VFA4w) 和 [鏈接2](https://www.sparkfun.com/products/12650) – GentlemanS

    +0

    我感謝你的問題以及你在制定這個問題時所付出的努力,但對於這個網站來說,這個問題太廣泛了。我不能讓自己舉報結案,但如果有人這樣做,不要感到驚訝。祝你好運,你甚至可以在這裏獲得一些有用的信息。請參閱[this](https://stackoverflow.com/help),瞭解適用於本網站的問題類型。 – Gary99

    +0

    是的,我有點害怕。我昨晚花了不少時間想出如何減少問題的範圍而沒有將其作爲一個XY,但我的基本問題不是一個*如何[任務] *,而是一個*什麼[任務] *如果你可以建議我以一般的方式開始或如何減少我的問題,我將不勝感激。 – GentlemanS

    回答

    0

    哇,什麼項目!

    獲取跑步機工作

    如果你的目標是「讓跑步機上工作」,則不要使用任何的這個麻煩;而是專注於調試主板。可能只有1個組件變壞了,修復這個問題比通過簡單/中等/難度模式構建您提到的所有內容要容易和快速。但我知道你的目標是學習和樂趣,不是簡單地得到它的工作

    正如你已經確定,你需要一些低級別的訪問硬件:)

    控制迴路和數據收集(控制跑步機並讀取心率)。這種類型的工作對於微型人士來說是完美的,所以你在那裏找到正確的道路。 Android或Linux對於這些任務來說是不必要的複雜,並且實施它們將爲您帶來更多的工作,而沒有什麼優勢。

    用戶交互

    在最低的限度,現有的物理按鈕和旋鈕將直接控制微。一旦你打到檢查站,恭喜你,跑步機再次運轉。

    但是你不想「工作」,你想要「酷」。您提到了用戶與系統進行交互的幾種不同方式:顯示器,觸摸屏,手機等。這已經是一個巨大的項目,所以不要浪費時間嘗試手動實現這些東西,從而重蹈覆轍。找到一個工作系統(你的筆記本電腦,每日手機,甚至是一個廉價的在線平板電腦),然後用它與藍牙或WiFi等低級微型設備進行通話。

    選擇正確的工具

    如果你撿東西不起眼,預計花費大量的時間,只是試圖讓基本功能出來。因此,在一般情況下,你要挑硬件&軟件:

    • 是穩健的(很多人用最少的問題,使用它)
    • 有一個大的社區(從其他專家/愛好者的支持)
    • 有一個大的生態系統(有大量的庫,你可以利用)

    Arduino可能是一個很好的微小你。研究一下。

    對於「酷」顯示器,您的個人手機可能是最好的選擇。您手機的應用程序開發功能強大,當您需要時,您的手機應用程序將支持大量的

    其他的想法

    • 你提到的LabVIEW:停止這樣做。幾乎所有目標都是錯誤的工具。
    • 您問到如何將市電調節到小型電路板:從家中的舊電子設備購買/找到任何舊的牆式電源適配器。切斷小費。將電線連接到您的主板。完成。 (所有的魔法都在磚塊內)​​。
    • 您問過哪種方法最好:B.讓跑步機使用基本微型工作。然後添加無線微型。然後編寫一個應用程序,以給你一個甜美的顯示和控制跑步機(通過微型)。
    • 急停。聰明。
    +0

    對LabVIEW的愚蠢評論破壞了很好的答案 - 這對於使用筆記本電腦和觸摸屏實現專用UI來說是一個非常好的選擇,讓微控制器能夠照顧到底層的東西。事實上,通過第三方Arduino編譯器和/或使用LINX工具將實時代碼部署到Raspberry Pi或Beaglebone Black目標的能力,幾乎肯定可以用於低級控制(非商業用途應用程序),特別是如果提問者已經具有LabVIEW的經驗。 – nekomatic

    +0

    對不起,這點毀了你,但這是事實。同意,筆記本電腦用戶界面與uC對話會很好,但問題人員最終很明顯地在尋找智能手機解決方案。嘗試在LabVIEW中編寫一個Android應用程序......提問者說他​​剛畢業並擁有LabVIEW,但從未暗示他知道如何使用它。LabVIEW(尤其是嵌入式)不具有提問者絕對需要的大型生態系統或社區。基於這個問題,他的軟件背景相當薄弱,這對於LabVIEW來說尤其糟糕。 – Dan

    +1

    我給人的印象是提問者提到Android,因爲他們認爲這就是他們想要的樣子,而不是因爲運行Android應用程序是一項艱難的要求。無論如何,他們可以閱讀我們的意見並作出自己的判斷。 – nekomatic