2021-11-24 19:52:41 索煒達(dá)電子 1692
項(xiàng)目編號(hào):E2452
文件大?。?15K
源碼說(shuō)明:帶中文注釋
開(kāi)發(fā)環(huán)境:C編譯器
簡(jiǎn)要概述:
C++項(xiàng)目:解析G代碼/三維軌跡仿真/機(jī)器人仿真
項(xiàng)目簡(jiǎn)介
1.基于Qt框架,Qt本身可以被稱(chēng)作是一種C++的延伸,Qt本身已經(jīng)繼承了C++的快速、簡(jiǎn)易、面向?qū)ο蟮仍S多的優(yōu)點(diǎn).
2.本項(xiàng)目模塊可分為三大塊:
-解析G代碼
-軌跡數(shù)據(jù)可視化
-機(jī)器人三維仿真
3.項(xiàng)目技術(shù)棧: 基本涵蓋了所有C++基礎(chǔ),例如數(shù)據(jù)結(jié)構(gòu)與算法,設(shè)計(jì)模式,STL庫(kù)等
4.面向?qū)ο缶幊田L(fēng)格: <Effective C++> <More Effective C++>
5.大部分代碼都配有注釋降低上手難度
模塊介紹
解析G代碼
本功能是通過(guò)解析數(shù)控程序G/M代碼指令,獲取二維的軌跡數(shù)據(jù)進(jìn)行繪制
增加了刀補(bǔ)算法: 可根據(jù)刀具寬度和計(jì)算軌跡調(diào)整實(shí)際切割軌跡
增加了手勢(shì)操作: 鼠標(biāo)滾輪放大以及拖拽
軌跡數(shù)據(jù)可視化
可以將TXT文件的軌跡數(shù)據(jù)導(dǎo)入,實(shí)現(xiàn)軌跡數(shù)據(jù)的顯示
除此以外還提供了求交面設(shè)置,可以捕捉到軌跡和任意平面的相交的點(diǎn)坐標(biāo)
機(jī)器人三維仿真
本功能可以實(shí)現(xiàn)三維機(jī)器人stl文件的導(dǎo)入, 通過(guò)載入關(guān)節(jié)來(lái)裝配機(jī)器人
設(shè)置機(jī)器人的關(guān)鍵參數(shù): DH參數(shù), 運(yùn)動(dòng)范圍, 起始角度
增加了加載工件功能: 工件提供坐標(biāo)軸和環(huán), 可以與鼠標(biāo)交互實(shí)現(xiàn)移動(dòng)和旋轉(zhuǎn)
增加機(jī)器人示教功能: 通過(guò)示教功能實(shí)現(xiàn)機(jī)器人的運(yùn)動(dòng)
增加了軌跡運(yùn)動(dòng)起始姿態(tài)幻影: 每次開(kāi)始運(yùn)動(dòng)時(shí)記錄原始姿態(tài)
三維場(chǎng)景節(jié)點(diǎn)組織圖
渲染引擎使用OSG, OSG使用的是樹(shù)數(shù)據(jù)結(jié)構(gòu)來(lái)管理場(chǎng)景內(nèi)部的各個(gè)節(jié)點(diǎn)
目錄│文件列表:
└ parse-gcode
└ src
│ image.qrc
│ main.cpp
│ mainwindow.cpp
│ mainwindow.h
│ mainwindow.ui
│ newParseGCode.pro
│ newParseGCode.pro.user
├ common
│ │ commonfunc.cpp
│ │ commonfunc.h
│ │ element.cpp
│ └ element.h
├ compensation
│ │ compensation.cpp
│ └ compensation.h
├ icon
│ │ 1.png
│ │ 2.png
│ │ clean.png
│ │ codeEditWidget.png
│ │ graph.png
│ │ graphWidget.png
│ │ new.png
│ │ open.png
│ │ save.png
│ │ saveAs.png
│ └ start.png
├ parseCode
│ │ parsecode.cpp
│ └ parsecode.h
└ widget
│ codeeditwidget.cpp
│ codeeditwidget.h
│ drawingarea.cpp
│ drawingarea.h
│ graphwidget.cpp
└ graphwidget.h