楊 曼,高 飛,趙 波,董永濤
(云南民族大學 電氣與信息工程學院,云南 昆明 650500)
2016年6月2日,我國成為國際本科工程學位互認協(xié)議《華盛頓協(xié)議》的正式會員[1],這標志著我國高等教育將以工程教育為導向,對我國高等教育質(zhì)量的提高發(fā)揮著極大的督促作用.在我國高等教育中,地方高等院校是主體力量,作者根據(jù)教育部發(fā)布《全國高等學校名單》截止2017年5月數(shù)據(jù)統(tǒng)計,我國普通高等院校共計2631所,教育部直屬普通高等院校76所,民辦高等院校735所,其他地方所屬高等院校院校地方院校共計1820所,地方所屬高等院校占69%.地方院校以服務區(qū)域經(jīng)濟和促進社會發(fā)展為目標,承擔著為地方培養(yǎng)高素質(zhì)人才的重要任務[2].但地方高等院校與“985工程”院校和“211工程”院校相比存在著學生基礎較差、教師能力欠缺、實驗實訓條件不足等問題.
工程教育的根本理念是“以學生為中心”[3-4],強調(diào)學生的學習成果,聚焦于學生通過學習具備什么能力,畢業(yè)生應該滿足怎樣的畢業(yè)要求,工程認證標準對學生的畢業(yè)要求共計12條,作者在長期的教學工作中發(fā)現(xiàn)地方院校學生最欠缺工程認證畢業(yè)要求中的研究能力、個人和團隊能力以及溝通能力,3方面能力在工程認證中具體描述如下.
1) 研究 能夠基于科學原理并采用科學方法對復雜工程問題進行研究,包括設計實驗、分析與解釋數(shù)據(jù)、并通過信息綜合得到合理有效的結論.
2) 個人和團隊 能夠在多學科背景下的團隊中承擔個體、團隊成員以及負責人的角色.
3) 溝通 能夠就復雜工程問題與業(yè)界同行及社會公眾進行有效溝通和交流,包括撰寫報告和設計文稿、陳述發(fā)言、清晰表達或回應指令.并具備一定的國際視野,能夠在跨文化背景下進行溝通和交流.
地方高等院校工程化建設任重而道遠,課程建設是高等教育的重要組成部分,而《C程序設計》是工程教育體系的一門重要基礎課程,因此研究符合工程認證要求的地方院校《C程序設計》課程教學設計有重要意義.筆者課題組以智能汽車競賽項目作為工程抓點,抽取核心內(nèi)容,結合《C程序設計》知識點進行教學設計,通過用本課程設計進行教學,實現(xiàn)對上述3種能力的提高.
《C程序設計》課程是工科專業(yè)的一門專業(yè)基礎課程,該課程對實踐性要求特別高,不但要求學生掌握書本上的概念,更要求學生動手編程,調(diào)試和運行程序[5~8],為后續(xù)專業(yè)課程學習和設計打下基礎.目前本科高等院?!禖程序設計》的教學現(xiàn)狀為[9]:
1) “重理論,輕實踐”,授課老師用大量課堂時間在課堂上用“滿堂灌”的方法教授C程序語法和細節(jié),實踐訓練較少,學生能聽懂但自己不會做.導致學生學習興趣不高,教學效果不佳;
2) 實驗內(nèi)容固定,課程與本專業(yè)的知識脫節(jié).目前《C程序設計》課程主要是按照擬定教材上課,教材上內(nèi)容固定,很難與學生所學專業(yè)結合,不利于學生創(chuàng)新能力的培養(yǎng),學生在學習的過程中感覺與專業(yè)無關,學習情緒不高.
1.2.1 智能汽車競賽
智能汽車競賽為加強大學生實踐、創(chuàng)新能力和團隊精神的培養(yǎng),促進高等教育教學改革,由教育部高等學校自動化專業(yè)教學指導分委員會主辦全國大學生智能汽車競賽.智能汽車競賽的指導思想是“立足培養(yǎng)、重在參與、鼓勵探索、追求卓越”,鼓勵在校本科生積極參與,追求卓越,重點培養(yǎng)學生的實踐能力、團隊合作和創(chuàng)新精神[10].
智能汽車系統(tǒng)設計包括3個部分:賽車總體機械結構、硬件電路系統(tǒng)和軟件控制系統(tǒng).軟件控制系統(tǒng)是汽車的靈魂,以攝像頭組智能汽車軟件控制為例,一般包括圖像采集、圖像處理、賽道識別和自動控制4個部分組[11-12],智能汽車軟件功能細化圖如圖1所示.
初始化:單片機是智能小車的重要組成部分,要使單片機能正常工作,必須先對其進行初始化.主要是PPL初始化、PWM模塊初始化、ECT模塊初始化、I/O口初始化、A/D初始化.
圖像采集:圖像采集對于智能小車來說是非常重要的模塊,它是智能車的“眼睛”,是智能小車唯一能感知外部信息的傳感器模塊,所有賽道信息都只能由圖像采集模塊感知的,是小車穩(wěn)定、準確、快速行駛的前提條件.
圖像處理:圖像采集來的圖像信息不能直接用來控制智能車,需要將圖像去噪,去除干擾,運用二值優(yōu)化算法提出賽道黑線后,才能用來控制智能車行駛.
賽道識別:要讓小車快速的行駛,需要提前判斷路況,識別賽道類型,才能保證小車有效的行駛.在智能車競賽中主要包括直行道、左右單彎道、S彎道等.
自動控制:根據(jù)識別的賽道信息對小車進行自動控制,自動控制包括電機轉向控制和直流電機控制調(diào)節(jié)速度,電機轉向控制算法一般采用PID算法,直流電機控制算法一般采用二維模糊算法和PID算法.
起始線檢測:起始線能否準確的檢測到,并轉化為停車標志,是智能車跑完一圈后能否平穩(wěn)停下來的關鍵.判斷起始線的方法常有數(shù)黑點法、三段黑線法等.
1.2.2 智能汽車與《C程序設計》結合
作者通過對智能汽車軟件部分模塊的研究,結合《C程序設計》的課程特點和學習該門課程需掌握的知識點,通過多年的教學經(jīng)驗,從智能汽車軟件部分中提取了以下5個問題進行教學,提取問題和課程知識點對應如表1所示.
表1 智能汽車提取問題和課程知識點對應表
初始化是任何C程序設計必須的部分,特別是對智能汽車的軟件設計,智能汽車的主要控制部件是單片機,對單片機的初始化是智能汽車正常工作的基礎,初始化涵蓋的C程序知識點主要有數(shù)據(jù)類型、變量定義及初始化;二值化是在圖像采集處理中用灰度變換來研究灰度圖像的一種常用方法,二值優(yōu)化算法涵蓋的C程序知識點主要有算法、數(shù)組和指針;直行道識別和起始線識別是智能汽車賽道識別類型中的一種,涵蓋的C程序知識點主要有算法、順序結構、選擇結構和循環(huán)結構;PID算法是在工程實際中應用最為廣泛的調(diào)節(jié)器控制算法,在智能汽車競賽中主要用于舵機的控制和電動機的控制,PID算法涵蓋的C程序知識點主要有算法、循環(huán)結構和選擇結構.通過對上述問題的學習可以達到鞏固C程序相關知識點,并對C程序靈活應用的目的.
在《C程序設計》課程中引入了智能汽車軟件設計的內(nèi)容,將理工科專業(yè)知識與C程序設計知識相結合,改變了傳統(tǒng)教學中僅僅以教材內(nèi)容為限制,使學生在學習基礎課程的同時深化了專業(yè)知識,提高了學生對實際問題中較復雜的問題進行處理的能力,培養(yǎng)了學生的研究能力.
由于高校招生生源的原因,地方院校學生的知識儲備能力、自身素質(zhì)和認知水平上都與重點高校的學生有差距,主要表現(xiàn)在以下學生自主學習能力差、課堂參與度底和缺乏足夠的自學時間[13].因此在《C程序設計》教學方法中主要采取了傳統(tǒng)的教學方式.但該門課程是實踐性和邏輯性很強的一門課程,所以除了傳統(tǒng)教學方式外,還采用了基于項目教學方法[14]和問題教學方法[15]結合的教學方法、分組教學方法和翻轉課堂教學方法[16].
項目和問題教學方法相結合的教學方法:對于地方院校的學生,完全采用基于項目教學,學生的能力達不到;單純采用問題教學,沒有載體,難以滿足工程認證的要求.本文采用基于智能汽車競賽項目作為載體,提出核心內(nèi)容作為問題,結合課程知識點進行教學,具體結合點參見表1.通過項目和問題結合的教學方法,讓學生研究智能汽車軟件設計中專業(yè)實際中較復雜的工程問題,提高學生解決這些問題的實際能力,學生的研究能力得到了培養(yǎng).
分組教學方法:對班級同學進行分組,每組選一名小組長,組內(nèi)成員進行分工合作,最終完成團隊工作.通過分組教學方法,讓學生構建團隊,讓團隊中每個成員都承擔自己的責任,團隊成員為達成共同的目標而努力,培養(yǎng)了學生的個人和團隊以及溝通能力.
翻轉課堂式教學方法:是指學生在課后完成知識的學習,而課堂變成了老師學生之間和學生與學生之間互動的場所,包括答疑解惑、知識的運用等,從而達到更好的教育效果.本課程要求上課班級同學在課后進行智能汽車知識點的學習,撰寫PPT,并在課程結束前進行PPT匯報工作,匯報完成后老師進行點評.通過翻轉課堂教學,讓學生準備如何解決智能汽車軟件設計中專業(yè)問題的PPT,并進行講解,對學生的學習興趣有了很大的提高,并培養(yǎng)了學生研究、個人和團隊、溝通能力.
傳統(tǒng)的考核評價主要通過平時作業(yè)、考勤和期末考試作業(yè)作為考核評價標準,《C程序設計》課程設計引入了智能小車軟件提取的問題進行教學,考核評價包括課堂表現(xiàn)、課后作業(yè)、期末成績、分工任務完成情況、PPT質(zhì)量和匯報情況、期末考試成績,具體表2所示.
表2 考核項及其占比
課堂表現(xiàn)和課后作業(yè)是學生在學習過程中態(tài)度的重要體現(xiàn),分別占比5%和5%;分工任務的完成情況是學生的研究能力和團隊能力的體現(xiàn),占比10%;PPT質(zhì)量和PPT的匯報個人能力和溝通能力的體現(xiàn),占比10%;期末考試是學生整個學期的學習成效的體現(xiàn),占比60%,上述幾項構成了該門課程的評價體系.
文中的《C程序設計》課程設計在某大學電氣信息工程學院進行了實踐,上課班級共有32名同學,12周結束后將32名同學分成了4組,每組8名同學,對課程設計中的4個問題進行了C程序?qū)崿F(xiàn),并向同學們演示了學院參賽智能汽車競賽設計的智能汽車.
通過一學期按照本文中的《C程序設計》課程設計的學習,要求上課班級同學自學智能汽車競賽軟件中的問題,并實行班內(nèi)分組,組內(nèi)分工,完成智能汽車競賽軟件中的問題用C程序?qū)崿F(xiàn),實驗調(diào)試,撰寫PPT并在課堂上進行匯報,提高了工程認證中畢業(yè)要求需具備的研究、個人和團隊以及溝通的能力.教學設計與能力對應如圖2所示.
本文針對地方院校特點和工程認證畢業(yè)要求,提出了符合工程認證畢業(yè)能力要求中研究、個人和團隊以及溝通三項能力的《C程序設計》課程教學設計.本課程設計以智能汽車競賽軟件作為依托,抽取核心內(nèi)容,結合《C程序設計》課程知識點進行教學內(nèi)容設計,在教學方法上采用了傳統(tǒng)教學方法、基于項目和問題教學結合教學方法、分組教學方法以及翻轉課堂教學方法,并在某大學電氣信息工程學院進行了實踐,取得了良好的效果,相較于采用傳統(tǒng)教學方案的學生,從考評成績上來看,學生在基礎知識得分、程序設計得分等各項成績都有較明顯提高.課題組還對學生進行問卷調(diào)查,根據(jù)問卷結果,學生在研究、個人和團隊以及溝通3項能力上都有較大提升.
通過該課程改革方案教學,該大學電氣信息工程學院從2015年參賽以來,獲國家二等獎1項,西部賽區(qū)二等獎2項,三等獎3項.鑒于取得的良好成績,根據(jù)教務部高等學校自動化專業(yè)教學指導委員會工作安排,該大學承辦了第十二屆全國大學生智能汽車競賽西部賽區(qū)比賽.
智能汽車競賽中,硬件包含了模擬電子電路、數(shù)字電子電路、單片機等知識,軟件可以用C程序、matlab、Java、python等實現(xiàn),這些課程都是工科專業(yè)的重要基礎課程,在未來的教學中可以將本文中《C程序設計》課程設計方法進行推廣教學,使更多的課程符合工程認證的要求.