msOS設計的本意是為電子類(lèi)設備及PLC設計的,一開(kāi)始想著(zhù)仿造西門(mén)子的S7-300來(lái)設計一套基于CAN通訊的分布式PLC,然而當設計了幾個(gè)硬件模塊之后就發(fā)現,這個(gè)需求定義超出了我的個(gè)人能力,自己的綜合知識還沒(méi)有上到這個(gè)層面,所以開(kāi)始退而求其次,仿照普通的PLC,結合華禹工控及俊知機械的需求設計了一款簡(jiǎn)單的嵌入式PLC,取名為msPLC-Demo。 msOS開(kāi)發(fā)過(guò)程中的調試都是用msPLC-Demo的,msPLC-Demo也經(jīng)歷了3個(gè)版本,逐漸完善成熟,通過(guò)對msPLC-Demo的完善,讓我更清楚工業(yè)設計的需求,對PLC更加理解,比如我們自己建立系統,可以不需要標準PLC那么復雜,接口部分最后演化為共陽(yáng)輸入光耦隔離,中功率共陰輸出直接驅動(dòng),可以直驅繼電器類(lèi)驅動(dòng)器,簡(jiǎn)單、易用。 基于msPLC Demo,做了不少項目,比如400~1200度的紅外激光測溫儀的校準臺,測溫儀與高頻感應加熱設備的控制器,這兩個(gè)都需要一套PID算法,于是就開(kāi)發(fā)了一套面向對象的PID庫,簡(jiǎn)單設置一下溫度值就搞定了溫度控制。機械自動(dòng)化里面,經(jīng)常需要控制步進(jìn)電機,于是基于德國公司高性能的TMC262步進(jìn)控制器,編寫(xiě)了步進(jìn)電機驅動(dòng)庫。 msOS開(kāi)發(fā)過(guò)程中,我就建了一個(gè)QQ群:291235815,并且在博客上發(fā)表了要做msOS的信息,把需求描述了一下,感興趣的網(wǎng)友加入了進(jìn)來(lái),其中最主要的群體是原基于Mcu51的“實(shí)用單片機系統”MS3的客戶(hù)群體,他們就是從MS3入門(mén)嵌入式的,所以他們一開(kāi)始就對msOS產(chǎn)生了很強烈的興趣,在他們的熱情下,加速了msOS的推動(dòng)。在開(kāi)發(fā)完成msOS之后,龐大的MS3用戶(hù)群體讓我認識到需要把這個(gè)群體引導到msOS中,于是把MS3按msOS風(fēng)格改寫(xiě),為了區分兩個(gè)系統,改寫(xiě)后的MS3,命名為msOS-Mcu51,而原來(lái)的msOS,命名為msOS-Stm32,加上之后的無(wú)OS精簡(jiǎn)版本msOS-Lite,形成了一個(gè)完整的系列。 群內網(wǎng)友積極參與,有些看了msOS代碼之后,寫(xiě)了一些讀后感,比如“獨釣千古愁”寫(xiě)了不少關(guān)于“設備”、“抽象”、“面向對象”方面的文章。有些基于msOS系列開(kāi)發(fā)產(chǎn)品后,共享了代碼,也有些把msOS移植到msp430、AVR中,也共享了代碼。我公司基于msOS開(kāi)發(fā)的產(chǎn)品,部分的共享了代碼,比如PID庫,步進(jìn)驅動(dòng)庫等。 為了進(jìn)一步普及,想做一個(gè)低成本的msPLC,但最后發(fā)現黑白字庫屏的成本下不來(lái),考慮到很多網(wǎng)友都有通用的評估板,于是想著(zhù)做一個(gè)PC機端的界面,虛擬LCD屏,代替真實(shí)的LCD屏,并且采用C#來(lái)開(kāi)發(fā),這樣形成一套PC上位機的C#開(kāi)發(fā)模版,支持串口等常用功能。因為我沒(méi)有太多的精力,群內“Claude”恰好會(huì )一些C#,于是他負責了這個(gè)項目,通過(guò)短短幾個(gè)星期,給出了一個(gè)模版,我做了優(yōu)化,“南方的風(fēng)”增加了ISP功能后,形成了一個(gè)比較不錯的上位機C#模版,取名為msMenu,真正實(shí)現嵌入式與PC端統一開(kāi)發(fā)的風(fēng)格,感謝“途客”推薦C#開(kāi)發(fā)環(huán)境“SharpDevelop”,非常好用。 msOS的開(kāi)發(fā)成功,統一了我公司嵌入式設備的開(kāi)發(fā),主要的幾個(gè)負責人,包括硬件負責人都在第一時(shí)間都掌握了編程技巧,通過(guò)代碼相互檢查,編碼質(zhì)量顯著(zhù)提高,有效的降低了公司的軟件成本。并且硬件人員也可以輕松修改軟件,對于相對不是很復雜的軟件,硬件人員也可以參考模版完成。 我公司現在的人才招聘,現在都在群內招聘,而通過(guò)這樣知根知底的招聘方式,有效的降低了公司經(jīng)營(yíng)的成本,人員穩定性也大。有一位在華為工作多年的軟件高手“藍色雪狐”看中msOS的價(jià)值,加盟我公司,今后由他來(lái)負責msOS的后續應用及推廣,開(kāi)發(fā)更多的電子設備和自動(dòng)化設備,比如火花放電加工設備和俊知的機械自動(dòng)化控制設備,目前都在開(kāi)發(fā)之中,之后把這些應用中的經(jīng)驗融合到msOS中,寫(xiě)成書(shū)讓更多的人受益。 msOS到今天算是告一段落,因為二代高頻機的深入研究需要FPGA技術(shù),自己設計精準控制芯片,所以最近我都在學(xué)習FPGA。幸運的是,剛開(kāi)始學(xué)習,就獲得我本科大學(xué)同學(xué)的支持,他是清華研究生,一直在某著(zhù)名芯片設計公司工作,當我把我的這套思路跟他講了之后,他非常認同,希望能在FPGA上建立一套通用的編程模版,暫時(shí)取名叫msFPGA吧,若開(kāi)發(fā)完成后,爭取實(shí)現開(kāi)源共享。 msOS從一開(kāi)始,就獲得我公司眾多高手的支持,后來(lái)廣大網(wǎng)友參與進(jìn)來(lái),讓msOS快速成長(cháng),目前QQ群已經(jīng)接近1000人滿(mǎn)員,這個(gè)速度還是基本上沒(méi)有做規模推廣下獲得的,因為我想著(zhù)主要靠口碑來(lái)傳遞。 |