Arduino & Visual Basic 6.0 (moteur Servo continu) (1 / 2 étapes)

Étape 1: Visual Basic 6.0 (fabrication du DLL)

Lorsque vous effectuez une DLL en VB6.0, toujours créer une classe indépendante. À l’intérieur de la classe, il pourrait être dans le bien Public (accessible par l’utilisateur) et les réunions privées (accessible uniquement par les fonctions internes). C’est une bonne pratique pour créer des classes qui a des fonctions spécifiques, donc ça pourrait aussi être utilisé à l’avenir des projets. Assurez-vous que vous enregistrez le fichier de projet et de la classe avant de prendre la DLL donc vous pouvez le modifier à l’avenir. * Une DLL n’est pas modifiable * sans ses fichiers projet/classe principale. Lorsque vous créez la DLL, assurez-vous que :

1. classe est indépendante, de déclarer des variables dans le privé (plus d’intimité)
2. n’acceptez pas d’objets dans la classe. Au lieu de cela, accepter de « variantes », puis « activés » à un objet privé déclarée.

Exemple :
Privé MC comme MSComm
Public sub InitializeClass (Byval fileName as String, MsComm comme variante)
' au lieu de
Public sub InitializeClass (Byval fileName as String, MsComm comme MSComm)
Ensuite, la valeur MC = MsComm
3. d’autres??? (J’ai seulement rencontré le problème énoncé à 2.)

Mon Servo Function

Private The_File As String, The_Section As String
Private MComm As MsComm, tBox As TextBox
TextLength privé aussi longtemps, Command As String

Private Declare Sub dormir Lib « kernel32 » (ByVal millisecondes As Long)
Private Declare Function GetPrivateProfileString Lib « kernel32 » Alias "GetPrivateProfileStringA" (ByVal IpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Const LocWordLength = 20

Public Sub InitServo(PortSettingFileName As String, FileSection As String, MsComm As Variant, txtBoxFeedback As Variant)
The_File = PortSettingFileName
The_Section = FileSection
Set MComm = MsComm
Définissez tBox = txtBoxFeedback

« Sortie chargé COMPORT paramètres
Journal "File:" & The_File & vbCrLf & "Section:" & The_Section

' Ouvrez compotier et connectez-vous avec Arduino
Avec MComm
If. PortOpen alors. PortOpen = False ' fermer et mettre le numéro de port com
. CommPort = SimpleGet("comport")
. Paramètres = SimpleGet("settings")
. EOFEnable = True
Journal "Com Port:" &. CommPort & vbCrLf & "paramètres:" &. Paramètres
Se termine par

SendData (« CO »)
End Sub

Public void SendData (ByVal Commandx As String)
On Error GoTo erreur
Commande = Commandx
« tout d’abord vérifier la commande
Commande = Trim(Command) ' se débarrasser des espaces supplémentaires sur le côté
Si (InStr (commande, "") <> 0) ou (Len(Command) > 10) puis
GoTo erreur "de ne pas envoyer si le format de la commande est erronée
End If

Dim i As Integer, Char As String

Pour i = 1 à 2 ' parce que la longueur d’ecpected caractère est seulement 2
Char = Mid (commande, i, 1)

Si (Char > = « A » Char et < = « Z ») puis "ne rien faire si les 2 premiers caractères alphabets
D’autre
GoTo erreur
End If
Prochaine je

Si InStr (Char, « C ») = 0 Then ' recherchez les chiffres pour les entrées non liés à CT et CO
Pour i = 3 pour Len(Command) ' s’assurer que le reste de la commande sont des entiers
Char = Mid (commande, i, 1)

Si (Char > = « 0 » et Char < = « 9 ») puis "ne rien faire si les caractères restants sont des chiffres
D’autre
GoTo erreur
End If
Prochaine je
End If

Si InStr (commande, « L ») = 0 Then ' si la commande ne demande pas de localisation
TextLength = Len(Command)
D’autre
TextLength = LocWordLength
End If

Avec MComm
. DTREnable = False
. RTSEnable = False ' désactiver la demande d’envoi de signal
If. PortOpen = False Then. PortOpen = True ' ouvrir le port
. Sortie = Commandx ' envoyer texte
. RThreshold = TextLength ' enregistrer envoyés de longueur de chaîne
End With ' quitter le port ouvert pour attendre signal écho de procéder
ServoOnComm

Exit Sub
Erreur :
Si (Err.Description) puis
MsgBox Err.Description
D’autre
MsgBox « La commande non valide! »
End If
End Sub

Private Sub Log(Text As String)
Sur erreur GoTo ERRR
tBox.Text = texte & vbCrLf & tBox.Text
Exit Sub
EUH :
MsgBox "erreur lors de l’enregistrement:" & Err.Description
Resume Next
End Sub

' Fonction OnComm manuelle pour détecter l’écho d’envoyé des données
Private Sub ServoOnComm()
Dim chaîneEntrée As String

Faire
DoEvents
Boucle jusqu'à ce que MComm.CommEvent = comEvReceive MComm.InBufferCount et > = TextLength

Sommeil (5)
Si TextLength = LocWordLength Then ' attendre caractères restants atteindre le tampon
Sommeil (30)
End If

« Récupérer toutes les données disponibles.
MComm.InputLen = 0

« Recherchez les données.
Si MComm.InBufferCount > 0 Then ' lire les données.
InString = MComm.Input
' vérifier si les données reçues est comme prévu
Si InStr (InString, commande) > 0 Then ' si la commande est un écho

ElseIf InStr(Command, "L") <> 0 puis ' si commande original a L echo est longue
Si Len(InString) > = LocWordLength Then

End If
D’autre
GoTo erreur
End If

Si Len(InString) > 0 Then ' écho de sortie sur textbox
tBox.Text = InString & tBox.Text
End If
End If

Si MComm.PortOpen alors MComm.PortOpen = False ' fermer le port après avoir reçu la réponse
Exit Sub
Erreur :
MsgBox « erreur! »
End Sub

Public void ExitServo()
SendData (« CT »)
Si MComm.PortOpen alors MComm.PortOpen = False ' si le port est ouvert, fermez si avant sortie

"peut-être peut ajouter au servo de maison avant de repartir
End Sub

Public void SimpleGet (VarName As String) As String
SLocalBuffer public static String * 500
Dim l As Integer

l = GetPrivateProfileString (The_Section, VarName, vbNullString, sLocalBuffer, The_File, 500)
SimpleGet = Left$ (sLocalBuffer, l)

End Function

Articles Liés

Arduino & Visual Basic 6 (contrôleur de lumière)

Arduino & Visual Basic 6 (contrôleur de lumière)

cette instructable est quelque chose comme un tutoriel pour les nouveaux utilisateurs VB. Il montre comment créer un programme VB6 analyseur d'interagir avec le circuit de l'Arduino. Fondamentalement, l'interaction est sous la forme d'une communicati
Joystick Arduino Shield Nrf24l01 Wireless 2 moteur à courant continu commande--RC voiture projet partie 1

Joystick Arduino Shield Nrf24l01 Wireless 2 moteur à courant continu commande--RC voiture projet partie 1

Arduino Joystick bouclier Nrf24l01 Wireless 2, commande de moteur dc--RC voiture projet partie 1Vidéos YouTubeDocumentsPartie 2 pour bientôt
Contrôler l’Arduino avec visual basic 6.0

Contrôler l’Arduino avec visual basic 6.0

Cette instructable fait partie de mon livre Arduino + visual basic 6.0 (apporter votre propre logiciel arduino contrôle Robot.Visual basic 6.0 est une très vieille version, certaines personnes peuvent demander pourquoi nous voulons utiliser visual ba
Arduino avec moteur servo accéléromètre

Arduino avec moteur servo accéléromètre

ADXL345 accéléromètre 2 servo moteur application control.Étape 1: Arduino CodeCommande de moteur servo ADXL345 accéléromètre 2#include < Wire.h >#include < Servo.h >Servo myservox ;Servo myservoy ;#define périphérique (0 x 53)#define TO_READ (
Arduino et mesure de l’humidité température Visual Basic RF plus

Arduino et mesure de l’humidité température Visual Basic RF plus

Nous pouvons voir Arduino à l'aide de 433 MHz RF avec affichage instantané des valeurs de température et d'humidité, comme nous le faisons avec le programme visual basic.http://Make.robimek.com/Arduino-Visual-Basic-Wireless-temperature-Humidity-Contr
Degré de 180 spécialistes circuit Servo tour modifier à la tour de Servo continu.

Degré de 180 spécialistes circuit Servo tour modifier à la tour de Servo continu.

Avez-vous déjà essayé de convertir une seule fois de ces tours de servo avant ? Si vous n'avez alors vous sauriez qu'il n'est pas difficile, le concept du moins. Toutefois, si vous essayez de les programmer après la modification vous pourriez faire f
Arduino + L298 intégré au moteur et pilote

Arduino + L298 intégré au moteur et pilote

Un contrôleur de moteur est un dispositif qui sert à gouverner d'une façon prédéterminée, les performances d'un moteur électrique. Un contrôleur de moteur peut inclure un moyen manuel ou automatique pour démarrer et arrêter le moteur, sélectionnez ro
Commande d’un moteur DC avec Arduino et Visual Basic

Commande d’un moteur DC avec Arduino et Visual Basic

Bonjour amis c'est mon premier post dans instructables.com où je vais essayer de mettre plus des nouveauté souvent.Aujourd'hui, le thème est avec Arduino et Visual Basic.Le projet que nous voyons aujourd'hui est un moteur à courant continu contrôleur
Arduino - Servo contrôle Visual Basic

Arduino - Servo contrôle Visual Basic

Salut les gars,Aujourd'hui, je vais montrer comment vous pouvez contrôler un servo avec Visual basic. Avant ce projet je n'ai jamais utilisé Visual basic donc si quelqu'un trouve une erreur dans mon code s'il vous plaît laisser un commentaire ici et
Contrôles de Kinect Arduino filaire Servos à l’aide de Visual Basic 2010

Contrôles de Kinect Arduino filaire Servos à l’aide de Visual Basic 2010

mise à jour JAN 2012 : ce guide est en vedette sur Channel9 MSDN de Microsofthttp://channel9.msdn.com/Coding4Fun/blog/Kinecting-to-Arduino-with-Visual-BasicINTRODUCTIONDans ce projet, j'utilise des mouvements de gauche et de droite dans Kinect pour c
Commande de 3 moteurs servo avec 3 potentiomètres et un Arduino

Commande de 3 moteurs servo avec 3 potentiomètres et un Arduino

Salut. Il s'agit de mon premier instructable, alors j'espère que vous sera patient avec moi si je fais des erreurs de mise en place. Il est écrit pour les débutants comme moi, alors le plus avancé parmi vous pouvez sauter beaucoup de cela et juste ar
Arduino basé robot humanoïde à l’aide des moteurs servo

Arduino basé robot humanoïde à l’aide des moteurs servo

Bonjour à tous,Il s'agit de mon premier robot humanoïde, faite par la feuille de plastique épaisse que je ne sais pas le nom de la feuille. Il est disponible en différentes épaisseur. Ici, j'ai utilisé de 0,5 mm. À présent, ce robot peut juste marche
Arduino télécommande RGB conduit par Visual Basic

Arduino télécommande RGB conduit par Visual Basic

Exigences en matièreN'importe quel Arduino (j'utilise Arduino Uno)Visual Basic Express 2010 vous pouvez télécharger VB depuis iciRGB LedÉtape 1: Création d'applicationDans ce instructable, nous allons faire un programme de contrôle RGB Led.Suivez les
Comment programmer Arduino Bluetooth Communication série dans Visual Basic Express 2010

Comment programmer Arduino Bluetooth Communication série dans Visual Basic Express 2010

Tici sont divers programme/logiciel Android pour contrôler votre arduino bluetooth robot avec votre android. Mais vous ne trouvez pas celui à utiliser avec votre PC windows. Donc, je programme un peu on dans Visual Basic Express 2010. Espérons qu'il