Heim Backend-Entwicklung C#.Net-Tutorial Teilen Sie die Schritte des sekundären GTS-800-Entwicklungsprozesses

Teilen Sie die Schritte des sekundären GTS-800-Entwicklungsprozesses

Jun 23, 2017 pm 04:13 PM
二次开发 基本 总结 流程

1. Öffnen Sie den Controller GT_Open
2. Starten Sie die Servofreigabe GT_ClrSts
Löschen Sie die Achsenplanungsposition GT_PrfTrap
5. Achsenzielposition GT_SetPos
6. Achsenrotationsgeschwindigkeit GT_SetVel
8. Aktivieren Sie GT_AxisOff
9. Schließen Sie den Controller 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();
        }
    }
}
Nach dem Login kopieren
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;

}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonTeilen Sie die Schritte des sekundären GTS-800-Entwicklungsprozesses. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie eröffne ich mehrere Toutiao-Konten? Wie läuft die Beantragung eines Toutiao-Kontos ab? Wie eröffne ich mehrere Toutiao-Konten? Wie läuft die Beantragung eines Toutiao-Kontos ab? Mar 22, 2024 am 11:00 AM

Mit der Popularität des mobilen Internets hat sich Toutiao zu einer der beliebtesten Nachrichteninformationsplattformen in meinem Land entwickelt. Viele Benutzer hoffen, mehrere Konten auf der Toutiao-Plattform zu haben, um unterschiedlichen Anforderungen gerecht zu werden. Wie eröffnet man also mehrere Toutiao-Konten? In diesem Artikel werden die Methode und der Antragsprozess zur Eröffnung mehrerer Toutiao-Konten ausführlich vorgestellt. 1. Wie eröffne ich mehrere Toutiao-Konten? Die Methode zur Eröffnung mehrerer Toutiao-Konten ist wie folgt: Auf der Toutiao-Plattform können Benutzer Konten über verschiedene Mobiltelefonnummern registrieren. Jede Mobiltelefonnummer kann nur ein Toutiao-Konto registrieren, was bedeutet, dass Benutzer mehrere Mobiltelefonnummern verwenden können, um mehrere Konten zu registrieren. 2. E-Mail-Registrierung: Verwenden Sie verschiedene E-Mail-Adressen, um ein Toutiao-Konto zu registrieren. Ähnlich wie bei der Registrierung einer Mobiltelefonnummer kann auch jede E-Mail-Adresse ein Toutiao-Konto registrieren. 3. Melden Sie sich mit einem Drittanbieterkonto an

Einfache und leicht verständliche sekundäre Entwicklungsanleitung für das Java Hikvision SDK Einfache und leicht verständliche sekundäre Entwicklungsanleitung für das Java Hikvision SDK Sep 06, 2023 pm 02:01 PM

Einfacher und leicht verständlicher sekundärer Entwicklungsleitfaden für das Java Hikvision SDK. Einführung: Mit der Entwicklung der Kameraüberwachungstechnologie hat sich Hikvision zu einem der weltweit führenden Anbieter von Sicherheitslösungen entwickelt Funktionen und Schnittstellen für die Sekundärentwicklung und kundenspezifische Entwicklung. In diesem Artikel wird die Verwendung der Java-Sprache für die Sekundärentwicklung des Hikvision SDK vorgestellt und einige Codebeispiele bereitgestellt, um den Lesern das Verständnis und die Anwendung zu erleichtern. 1. Vorbereitung der Umgebung Zunächst vor der Durchführung der sekundären Entwicklung des Hikvision SDK

Fassen Sie die Verwendung der Funktion system() im Linux-System zusammen Fassen Sie die Verwendung der Funktion system() im Linux-System zusammen Feb 23, 2024 pm 06:45 PM

Zusammenfassung der Funktion system() unter Linux Im Linux-System ist die Funktion system() eine sehr häufig verwendete Funktion, mit der Befehlszeilenbefehle ausgeführt werden können. In diesem Artikel wird die Funktion system() ausführlich vorgestellt und einige spezifische Codebeispiele bereitgestellt. 1. Grundlegende Verwendung der Funktion system() Die Deklaration der Funktion system() lautet wie folgt: intsystem(constchar*command);

Die große Modellplattform von Baidu Intelligent Cloud Qianfan wurde erneut aktualisiert: 5 große Modelle und 55 neue Werkzeugkomponenten wurden veröffentlicht! Die große Modellplattform von Baidu Intelligent Cloud Qianfan wurde erneut aktualisiert: 5 große Modelle und 55 neue Werkzeugkomponenten wurden veröffentlicht! Mar 22, 2024 am 08:10 AM

Es bedient 80.000 Unternehmensbenutzer und hat Benutzern bei der Feinabstimmung von 13.000 großen Modellen und bei der Entwicklung von 160.000 großen Modellanwendungen geholfen. Seit Dezember 2023 sind die täglichen API-Aufrufe der Baidu Smart Cloud Qianfan Large Model Platform im Vergleich zum Vormonat um 97 % gestiegen ..Vom „Pionier“ der inländischen Großmodellplattform vor einem Jahr bis zur heutigen Großmodell-„Superfabrik“ nimmt die Großmodellplattform Baidu Intelligent Cloud Qianfan fest eine führende Position auf dem inländischen Großmodellmarkt ein, ihr Tempo ist jedoch langsam . Habe nicht aufgehört. Am 21. März veranstaltete Baidu Intelligent Cloud im Beijing Shougang Park eine Qianfan-Produkteinführungskonferenz. Während der Konferenz gab Baidu Intelligent Cloud bekannt: 1. Gemeinsam mit dem Bezirk Shijingshan in Peking die erste groß angelegte industrielle Innovationsbasis von Baidu Intelligent Cloud aufbauen um den Aufschwung regionaler Industrien zu fördern. 2. Die „Wertigkeit“ der Unternehmen befriedigen

Sind Douyin-Schlafanker profitabel? Was sind die spezifischen Verfahren für das Schlaf-Livestreaming? Sind Douyin-Schlafanker profitabel? Was sind die spezifischen Verfahren für das Schlaf-Livestreaming? Mar 21, 2024 pm 04:41 PM

In der heutigen schnelllebigen Gesellschaft plagen immer mehr Menschen Probleme mit der Schlafqualität. Um die Schlafqualität der Nutzer zu verbessern, erschien auf der Douyin-Plattform eine Gruppe spezieller Schlafanker. Sie interagieren mit den Nutzern über Live-Übertragungen, geben Tipps zum Einschlafen und sorgen mit entspannender Musik und Geräuschen dafür, dass die Zuschauer ruhig einschlafen können. Sind diese Schlafanker also profitabel? Dieser Artikel konzentriert sich auf dieses Problem. 1. Lohnt es sich, ein Douyin-Schlafanker zu sein? Mit Douyin-Schlafankern lassen sich tatsächlich gewisse Gewinne erzielen. Erstens können sie über die Trinkgeldfunktion im Live-Übertragungsraum Geschenke und Transfers erhalten. Diese Vorteile hängen von der Anzahl ihrer Fans und der Zufriedenheit des Publikums ab. Zweitens gewährt die Douyin-Plattform dem Moderator einen bestimmten Anteil basierend auf der Anzahl der Aufrufe, Likes, Shares und anderen Daten der Live-Übertragung. Einige Schlafanker werden es auch tun

TensorFlow Deep-Learning-Framework-Modell-Inferenzpipeline für Porträtausschnitt-Inferenz TensorFlow Deep-Learning-Framework-Modell-Inferenzpipeline für Porträtausschnitt-Inferenz Mar 26, 2024 pm 01:00 PM

Übersicht Um ModelScope-Benutzern die schnelle und bequeme Nutzung verschiedener von der Plattform bereitgestellter Modelle zu ermöglichen, wird eine Reihe voll funktionsfähiger Python-Bibliotheken bereitgestellt, die die Implementierung offizieller ModelScope-Modelle sowie die erforderlichen Tools für die Verwendung dieser Modelle für Inferenzen umfassen , Feinabstimmung und andere Aufgaben im Zusammenhang mit der Datenvorverarbeitung, Nachverarbeitung, Effektbewertung und anderen Funktionen und bietet gleichzeitig eine einfache und benutzerfreundliche API und umfangreiche Anwendungsbeispiele. Durch den Aufruf der Bibliothek können Benutzer Aufgaben wie Modellinferenz, Schulung und Bewertung erledigen, indem sie nur wenige Codezeilen schreiben. Auf dieser Basis können sie auch schnell eine Sekundärentwicklung durchführen, um ihre eigenen innovativen Ideen zu verwirklichen. Das derzeit von der Bibliothek bereitgestellte Algorithmusmodell ist:

Schlüsselelemente zur Verbesserung der sekundären Entwicklungskompetenzen des Java Hikvision SDK Schlüsselelemente zur Verbesserung der sekundären Entwicklungskompetenzen des Java Hikvision SDK Sep 06, 2023 pm 01:42 PM

Zusammenfassung der Schlüsselelemente zur Verbesserung der sekundären Entwicklungskompetenzen des Java Hikvision SDK: Mit der rasanten Entwicklung des Internets der Dinge werden Videoüberwachungssysteme zunehmend im Sicherheitsbereich eingesetzt. Als wichtigste Komponente des Videoüberwachungssystems spielt das SDK von Hikvision eine wichtige Rolle im sekundären Entwicklungsprozess. In diesem Artikel wird die grundlegende Verwendung des Hikvision SDK vorgestellt und einige Schlüsselelemente und Codebeispiele bereitgestellt, um den Lesern dabei zu helfen, ihre Fähigkeiten in der sekundären Entwicklung des Java Hikvision SDK zu verbessern. 1. Verstehen Sie den grundlegenden Überblick über das Hikvision SDK

Was bedeutet WordPress-Sekundärentwicklung? Was bedeutet WordPress-Sekundärentwicklung? Apr 16, 2024 am 12:09 AM

Die Sekundärentwicklung von WordPress ermöglicht es Entwicklern, die WordPress-Funktionalität anzupassen und zu erweitern und zusätzliche Funktionen, Themes und Plugins zu erstellen, die spezifische Anforderungen erfüllen. Durch die Sekundärentwicklung können Entwickler WordPress anpassen, seine Kernfunktionalität erweitern, seine Flexibilität erhöhen und seine Skalierbarkeit problemlos erweitern, wenn die Website und das Unternehmen wachsen.

See all articles