智能機(jī)器人課程設(shè)計(jì)報(bào)告_第1頁
智能機(jī)器人課程設(shè)計(jì)報(bào)告_第2頁
智能機(jī)器人課程設(shè)計(jì)報(bào)告_第3頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、天津師范大學(xué)計(jì)算機(jī)與信息工程學(xué)院課程設(shè)計(jì)報(bào)告課程名稱:機(jī)器人設(shè)計(jì)設(shè)計(jì)題目:專 業(yè):信息工程班 級: 08(1)班組 別:學(xué)生姓名:吳雪萍 學(xué)號:08509205起止日期:2011年3月1日 2011年7月1日指導(dǎo)教師:劉巖愷梁景蓮?fù)M人員:課程設(shè)計(jì)題目機(jī)器人設(shè)計(jì)實(shí)驗(yàn)姓名吳雪萍學(xué)號08509205班級 08信息(1)班班級專業(yè)信息工程組別組長組員指導(dǎo)教師劉巖愷梁景蓮課程 設(shè)計(jì) 目的設(shè)計(jì)豕庭組機(jī)器人和機(jī)器人行走課程 設(shè)計(jì) 環(huán)境Vc+課程 設(shè)計(jì) 任務(wù) 和要 求用C+語言設(shè)計(jì)一個(gè)顏色識別的程序和一個(gè)機(jī)器人行走程序課程設(shè)計(jì)內(nèi)容描述:1 .緒論通過學(xué)習(xí)機(jī)器人設(shè)計(jì)2課程,學(xué)會(huì)了家庭組機(jī)器人和足球機(jī)器人的一些

2、理論知識。 了解了機(jī)器人方向識別,動(dòng)手調(diào)試了全景攝像頭和前置攝像頭,設(shè)置了場地、球門、白線、足球等的顏色數(shù)值。2. 顏色識別的產(chǎn)生結(jié)合梁老師給的人臉識別程序,通過改變?nèi)四樐P徒㈩伾R別程序。3. 平臺的選擇及搭建根據(jù)劉老師給的參考資料,首先安裝了 DirectX9.0 SDK和Visual C+軟件, 然后一步步的按照老師所給的步驟,先建立基本界面,接著編制串口通訊控制機(jī)器人 的程序,讀取距離傳感器信息等,最后得出了機(jī)器人行走程序如下。課程設(shè)計(jì)源程序:機(jī)器人行走/ VoyTestDIg.cpp : implementation file/#include stdafx.h#include V

3、oyTest.h#include VoyTestDlg.h#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;#endif/ CAboutDlg dialog used for App Aboutclass CAboutDlg : public CDialogpublic:CAboutDlg();/ Dialog DataAFX_DATA(CAboutDlg)enum IDD = IDD_ABOUTBOX ;AFX_DATA/ ClassWizard generated virtual

4、 function overridesAFX_VIRTUAL(CAboutDlg)protected:/ DDX/DDV supportvirtual void DoDataExchange(CDataExchange* pDX);/AFX_VIRTUAL/ Implementationprotected:AFX_MSG(CAboutDlg)/AFX_MSGDECLARE_MESSAGE_MAP();CAboutDlg:CAboutDlg() : CDialog(CAboutDlg:IDD)/AFX DATA INIT(CAboutDlg)AFX_DATA_INITvoid CAboutDlg

5、:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);AFX_DATA_MAP(CAboutDlg) AFX_DATA_MAPBEGIN_MESSAGE_MAP(CAboutDlg, CDialog)AFX_MSG_MAP(CAboutDlg)/ No message handlersAFX_MSG_MAPEND_MESSAGE_MAP()/ CVoyTestDlg dialogCVoyTestDlg:CVoyTestDlg(CWnd* pParent /*=NULL*/):CDialog(CVoyTestDlg:IDD,

6、 pParent)/AFX_DATA_INIT(CVoyTestDlg)m_nPort = 0;/AFX_DATA_INIT/ Note that LoadIcon does not require a subsequent DestroyIcon in Win32 m_hIcon = AfxGetApp()-Loadlcon(IDR_MAINFRAME);void CVoyTestDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);AFX_DATA_MAP(CVoyTestDlg)DDX_Text(pDX, ID

7、C_PORT, m_nPort);/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CVoyTestDlg, CDialog)AFX_MSG_MAP(CVoyTestDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_OPEN, OnOpen)ON BN CLICKED(IDC FORWARD, OnForward)ON_BN_CLICKED(IDC_BACKWARD, OnBackward)ON_BN_CLICKED(IDC_TURELEFT, OnTureleft)ON_BN_CLI

8、CKED(IDC_TURERIGHT, OnTureright)ON_BN_CLICKED(IDC_BRAKE, OnBrake)AFX_MSG_MAPEND_MESSAGE_MAP()/ CVoyTestDlg message handlersBOOL CVoyTestDlg:OnlnitDialog()CDialog:OnlnitDialog();/ Add About. menu item to system menu./ IDM_ABOUTBOX must be in the system command range.ASSERT(IDM_ABOUTBOX & OxFFFO) = ID

9、M_ABOUTBOX);ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR); pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);/ Set the icon for this dialog. The framework does this automatically/ when the applications main window is not a dialogSetIcon(m_hIcon, TRUE);/ Set big iconSetIcon(m_hIcon, FALSE);/

10、Set small icon/ TODO: Add extra initialization herereturn TRUE; / return TRUE unless you set the focus to a controlvoid CVoyTestDlg:OnSysCommand(UINT nID, LPARAM lParam)if (nID & OxFFFO) = IDM_ABOUTBOX)CAboutDIg dlgAbout;dlgAbout.DoModal();elseCDialog:OnSysCommand(nlD, IParam);/ If you add a minimiz

11、e button to your dialog, you will need the code below/ to draw the icon. For MFC applications using the document/view model,/ this is automatically done for you by the framework.void CVoyTestDlg:OnPaint()if (lslconic()CPaintDC dc(this); / device context for paintingSendMessage(WMCONERASEBKGND, (WPAR

12、AM) dc.GetSafeHdc(), 0);/ Center icon in client rectangleint cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;/ Draw the icondc.Drawlcon(x, y, m_hIcon);elseCD

13、ialog:OnPaint();/ The system calls this to obtain the cursor to display while the user drags/ the minimized window.HCURSOR CVoyTestDlg:OnQueryDragIcon()return (HCURSOR) m_hlcon;void CVoyTestDlg:OnOpen()/ TODO: Add your control notification handler code hereUpdateData();/CString str;/str.Format(”您打開的

14、串口號為 d,m_nPort);/AfxMessageBox(str);m_Com.SetCmd(&m_Cmd); /協(xié)議層與通訊層對接m_Com.Create(m_nPort); /打開通訊串口void CVoyTestDlg:OnForward()/ TODO: Add your control notification handler code here m_Cmd.SetBothMotorsSpeed(100,100); /前行void CVoyTestDlg:OnBackward()/ TODO: Add your control notification handler code

15、here m_Cmd.SetBothMotorsSpeed(-100,-100);/后退void CVoyTestDlg:OnTureleft()/ TODO: Add your control notification handler code here m_Cmd.SetBothMotorsSpeed(-100,100);/ 左轉(zhuǎn)void CVoyTestDlg:OnTureright()/ TODO: Add your control notification handler code here m_Cmd.SetBothMotorsSpeed(100,-100);/ 右轉(zhuǎn)void CVoyTestDlg:OnBrake()/ TODO: Add your control notification handler code here m_Cmd.Brake(1);/ 剎車總結(jié):1、程序調(diào)試及運(yùn)行結(jié)果通過程序運(yùn)行,我們可以看到足球機(jī)器人前進(jìn),后退,左轉(zhuǎn),右轉(zhuǎn)及剎車等 動(dòng)作的分解。2、小結(jié):通過完成本次實(shí)驗(yàn),我認(rèn)識到理論與實(shí)踐的結(jié)合

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論