Rumah pembangunan bahagian belakang Tutorial C#.Net 分享GTS-800二次开发流程步骤

分享GTS-800二次开发流程步骤

Jun 23, 2017 pm 04:13 PM
Pembangunan sekunder asas ringkaskan proses

1、打开控制器         GT_Open
2、启动伺服使能          GT_ClrSts
3、轴规划位置清零       GT_SetPrfPos
4、轴运动模式         GT_PrfTrap
5、轴目标位置         GT_SetPos
6、轴转动速度         GT_SetVel
7、启动轴           GT_Update
8、关闭使能          GT_AxisOff
9、关闭控制器         GT_Close
 
C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using gts;


namespace GTS
{
    class Program
    {
        static void command(string sz, short nR)
        {
            Console.WriteLine(sz + " = " + nR);
        }

        static void Main(string[] args)
        {
            short mAxis = 2;
            short nR = mc.GT_Open(0, 1);
            if (nR != 0)
            {
                command("GT_Open", nR);
                Console.WriteLine("Open error");
                return;
            }
            command("GT_Open", nR);
            // 清除各轴的报警和限位
            command("GT_ClrSts", mc.GT_ClrSts(mAxis, 1));
            // 伺服使能
            command("GT_AxisOn", mc.GT_AxisOn(mAxis));
            // 位置清零
            command("GT_ZeroPos", mc.GT_ZeroPos(mAxis, 1));
            // 轴规划位置清零
            command("GT_SetPrfPos", mc.GT_SetPrfPos(mAxis, 0));
            // 设置指定轴为点位运动模式。
            command("GT_PrfTrap", mc.GT_PrfTrap(mAxis));
            // 设置点位运动参数
            mc.TTrapPrm trap = new mc.TTrapPrm();
            trap.acc = 0.25;
            trap.dec = 0.125;
            trap.smoothTime = 25;
            command("GT_SetTrapPrm", mc.GT_SetTrapPrm(mAxis, ref trap));
            // 设置轴的目标位置
            command("GT_SetPos", mc.GT_SetPos(mAxis, 50000));
            // 设置轴的目标速度
            command("GT_SetVel", mc.GT_SetVel(mAxis, 25));
            // 启动轴运动
            command("GT_Update", mc.GT_Update(1 << mAxis - 1));

            mc.GT_Close();
            Console.ReadKey();
        }
    }
}
Salin selepas log masuk
C++源码:
#include "stdafx.h"
#include "windows.h"
#include "conio.h"
#include "gts.h"

#define AXIS		1

// 该函数检测某条GT指令的执行结果,command为指令名称,error为指令执行返回值
void commandhandler(char *command, short error)
{
	// 如果指令执行返回值为非0,说明指令执行错误,向屏幕输出错误结果
	if(error)
	{
		printf("%s = %d\n", command, error);
	}
}
int main(int argc, char* argv[])
{
	short sRtn;
	TTrapPrm trap;
	long sts;
	double prfPos;

	// 打开运动控制器
	sRtn = GT_Open();
	// 指令返回值检测,请查阅例2-1
	commandhandler("GT_Open", sRtn);
	// 配置运动控制器
	// 注意:配置文件取消了各轴的报警和限位
	sRtn = GT_LoadConfig("test.cfg");
	commandhandler("GT_LoadConfig ", sRtn);
	// 清除各轴的报警和限位
	sRtn = GT_ClrSts(1, 8);
	commandhandler("GT_ClrSts", sRtn);
	// 伺服使能
	sRtn = GT_AxisOn(AXIS);
	commandhandler("GT_AxisOn", sRtn);

	// 位置清零
	sRtn = GT_ZeroPos(AXIS);
	commandhandler("GT_ZeroPos", sRtn);
	// AXIS轴规划位置清零
	sRtn = GT_SetPrfPos(AXIS, 0);
	commandhandler("GT_SetPrfPos", sRtn);
	// 将AXIS轴设为点位模式
	sRtn = GT_PrfTrap(AXIS);
	commandhandler("GT_PrfTrap", sRtn);
	// 读取点位运动参数
	sRtn = GT_GetTrapPrm(AXIS, &trap);
	commandhandler("GT_GetTrapPrm", sRtn);
	trap.acc = 0.25;
	trap.dec = 0.125;
	trap.smoothTime = 25;
	// 设置点位运动参数
	sRtn = GT_SetTrapPrm(AXIS, &trap);
	commandhandler("GT_SetTrapPrm", sRtn);
	// 设置AXIS轴的目标位置
	sRtn = GT_SetPos(AXIS, 50000L);
	commandhandler("GT_SetPos", sRtn);
	// 设置AXIS轴的目标速度
	sRtn = GT_SetVel(AXIS, 50);
	commandhandler("GT_SetVel", sRtn);
	// 启动AXIS轴的运动
	sRtn = GT_Update(1<<(AXIS-1));
	commandhandler("GT_Update", sRtn);

	do
	{
		// 读取AXIS轴的状态
		sRtn = GT_GetSts(AXIS, &sts);
		// 读取AXIS轴的规划位置
		sRtn = GT_GetPrfPos(AXIS, &prfPos);
		printf("sts=0x%-10lxprfPos=%-10.1lf\r", sts, prfPos);
	}while(sts&0x400);	// 等待AXIS轴规划停止

	// 伺服关闭
	sRtn = GT_AxisOff(AXIS);
	printf("\nGT_AxisOff()=%d\n", sRtn);
	getch();
	return 0;

}
Salin selepas log masuk

 

Atas ialah kandungan terperinci 分享GTS-800二次开发流程步骤. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membuka berbilang akaun Toutiao? Apakah proses untuk memohon akaun Toutiao? Bagaimana untuk membuka berbilang akaun Toutiao? Apakah proses untuk memohon akaun Toutiao? Mar 22, 2024 am 11:00 AM

Dengan populariti Internet mudah alih, Toutiao telah menjadi salah satu platform maklumat berita paling popular di negara saya. Ramai pengguna berharap untuk mempunyai berbilang akaun pada platform Toutiao untuk memenuhi keperluan yang berbeza. Jadi, bagaimana untuk membuka berbilang akaun Toutiao? Artikel ini akan memperkenalkan secara terperinci kaedah dan proses permohonan membuka berbilang akaun Toutiao. 1. Bagaimana untuk membuka berbilang akaun Toutiao? Kaedah membuka berbilang akaun Toutiao adalah seperti berikut: Pada platform Toutiao, pengguna boleh mendaftar akaun melalui nombor telefon mudah alih yang berbeza. Setiap nombor telefon mudah alih hanya boleh mendaftar satu akaun Toutiao, yang bermaksud pengguna boleh menggunakan berbilang nombor telefon mudah alih untuk mendaftar berbilang akaun. 2. Pendaftaran e-mel: Gunakan alamat e-mel yang berbeza untuk mendaftar akaun Toutiao. Sama seperti pendaftaran nombor telefon mudah alih, setiap alamat e-mel juga boleh mendaftar akaun Toutiao. 3. Log masuk dengan akaun pihak ketiga

Panduan pembangunan menengah Java Hikvision SDK yang ringkas dan mudah difahami Panduan pembangunan menengah Java Hikvision SDK yang ringkas dan mudah difahami Sep 06, 2023 pm 02:01 PM

Panduan pembangunan menengah Java Hikvision SDK yang ringkas dan mudah difahami Pengenalan: Dengan pembangunan teknologi pengawasan kamera, Hikvision telah menjadi salah satu penyedia penyelesaian keselamatan terkemuka di dunia SDK (kit pembangunan perisian) yang disediakannya adalah Pembangun menyediakan banyak fungsi dan antara muka untuk pembangunan sekunder dan pembangunan tersuai. Artikel ini akan memperkenalkan cara menggunakan bahasa Java untuk pembangunan sekunder Hikvision SDK dan menyediakan beberapa contoh kod untuk membantu pembaca memahami dan menggunakan dengan lebih baik. 1. Persediaan persekitaran Pertama, sebelum melaksanakan pembangunan sekunder Hikvision SDK

Ringkaskan penggunaan fungsi system() dalam sistem Linux Ringkaskan penggunaan fungsi system() dalam sistem Linux Feb 23, 2024 pm 06:45 PM

Ringkasan fungsi system() di bawah Linux Dalam sistem Linux, fungsi system() ialah fungsi yang sangat biasa digunakan, yang boleh digunakan untuk melaksanakan arahan baris arahan. Artikel ini akan memperkenalkan fungsi system() secara terperinci dan menyediakan beberapa contoh kod khusus. 1. Penggunaan asas fungsi system() Pengisytiharan fungsi system() adalah seperti berikut: intsystem(constchar*command);

Platform model besar Baidu Intelligent Cloud Qianfan telah dinaik taraf semula: 5 model besar dan 55 komponen alat baharu telah dikeluarkan! Platform model besar Baidu Intelligent Cloud Qianfan telah dinaik taraf semula: 5 model besar dan 55 komponen alat baharu telah dikeluarkan! Mar 22, 2024 am 08:10 AM

Berkhidmat kepada 80,000 pengguna perusahaan, ia telah membantu pengguna memperhalusi 13,000 model besar dan membantu pengguna membangunkan 160,000 aplikasi model besar Sejak Disember 2023, panggilan API harian Baidu Intelligent Cloud Qianfan Large Model Platform telah meningkat sebanyak 97% bulan ke bulan. .. Daripada "perintis" platform model besar domestik setahun yang lalu kepada "kilang super" model besar hari ini, platform model besar Baidu Intelligent Cloud Qianfan menempati kedudukan utama dalam pasaran model besar domestik, tetapi kadarnya perlahan. Tidak berhenti. Pada 21 Mac, Baidu Intelligent Cloud mengadakan persidangan pelancaran produk Qianfan di Beijing Shougang Park Baidu Intelligent Cloud mengumumkan semasa persidangan itu: 1. Berganding bahu dengan Daerah Shijingshan Beijing untuk membina pangkalan inovasi industri model berskala besar Baidu Intelligent Cloud Qianfan. untuk membantu Menggalakkan perlepasan industri serantau 2. Memuaskan "valensi" perusahaan

Adakah sauh tidur Douyin menguntungkan? Apakah prosedur khusus untuk penstriman langsung tidur? Adakah sauh tidur Douyin menguntungkan? Apakah prosedur khusus untuk penstriman langsung tidur? Mar 21, 2024 pm 04:41 PM

Dalam masyarakat yang serba pantas hari ini, masalah kualiti tidur melanda semakin ramai orang. Untuk meningkatkan kualiti tidur pengguna, sekumpulan sauh tidur khas telah muncul di platform Douyin. Mereka berinteraksi dengan pengguna melalui siaran langsung, berkongsi petua tidur dan menyediakan muzik dan bunyi yang menenangkan untuk membantu penonton tidur dengan tenang. Jadi, adakah sauh tidur ini menguntungkan? Artikel ini akan memberi tumpuan kepada isu ini. 1. Adakah sauh tidur Douyin menguntungkan? Douyin sleep anchor memang boleh mendapat keuntungan tertentu. Pertama, mereka boleh menerima hadiah dan pemindahan melalui fungsi pemberian tip dalam bilik siaran langsung, dan faedah ini bergantung pada bilangan peminat dan kepuasan penonton mereka. Kedua, platform Douyin akan memberikan sauh bahagian tertentu berdasarkan bilangan tontonan, suka, perkongsian dan data lain siaran langsung. Beberapa sauh tidur juga akan

Rangka kerja pembelajaran mendalam TensorFlow talian paip inferens untuk inferens potongan potret Rangka kerja pembelajaran mendalam TensorFlow talian paip inferens untuk inferens potongan potret Mar 26, 2024 pm 01:00 PM

Gambaran Keseluruhan Untuk membolehkan pengguna ModelScope menggunakan pelbagai model yang disediakan oleh platform dengan cepat dan mudah, satu set perpustakaan Python berfungsi sepenuhnya disediakan, yang termasuk pelaksanaan model rasmi ModelScope, serta alatan yang diperlukan untuk menggunakan model ini untuk inferens. , finetune dan tugas-tugas lain yang berkaitan dengan pra-pemprosesan data, pasca-pemprosesan, penilaian kesan dan fungsi lain, sambil turut menyediakan API yang ringkas dan mudah digunakan serta contoh penggunaan yang kaya. Dengan menghubungi perpustakaan, pengguna boleh menyelesaikan tugas seperti inferens model, latihan dan penilaian dengan menulis hanya beberapa baris kod Mereka juga boleh melakukan pembangunan sekunder dengan cepat atas dasar ini untuk merealisasikan idea inovatif mereka sendiri. Model algoritma yang disediakan oleh perpustakaan pada masa ini ialah:

Elemen utama untuk meningkatkan kemahiran pembangunan menengah Java Hikvision SDK Elemen utama untuk meningkatkan kemahiran pembangunan menengah Java Hikvision SDK Sep 06, 2023 pm 01:42 PM

Ringkasan elemen utama untuk meningkatkan kemahiran pembangunan sekunder Java Hikvision SDK: Dengan perkembangan pesat Internet of Things, sistem pengawasan video semakin digunakan dalam bidang keselamatan. Sebagai komponen terpenting dalam sistem pengawasan video, SDK Hikvision memainkan peranan penting dalam proses pembangunan sekunder. Artikel ini akan memperkenalkan penggunaan asas Hikvision SDK dan menyediakan beberapa elemen utama serta contoh kod untuk membantu pembaca meningkatkan kemahiran pembangunan menengah Java Hikvision SDK mereka. 1. Fahami gambaran keseluruhan asas Hikvision SDK

Apakah maksud pembangunan sekunder WordPress? Apakah maksud pembangunan sekunder WordPress? Apr 16, 2024 am 12:09 AM

Pembangunan sekunder WordPress membolehkan pembangun menyesuaikan dan melanjutkan fungsi WordPress, mencipta ciri tambahan, tema dan pemalam yang memenuhi keperluan khusus. Melalui pembangunan sekunder, pembangun boleh menyesuaikan WordPress, melanjutkan fungsi terasnya, meningkatkan fleksibilitinya dan mengembangkan kebolehskalaannya dengan mudah apabila tapak web dan perniagaan berkembang.

See all articles