Notez que j'ai déplacé le capteur de portée Hokuyo Electric "UTM-30LX" avec python.
Je me suis demandé si URG fonctionnerait avec pythonn, et quand je l'ai cherché, j'ai trouvé une bonne bibliothèque, alors j'ai essayé de l'utiliser.
Code source pour le moment
Test_LRF_v1.py
import pyurg
import matplotlib.pyplot as plt
import time
def draw():
urg = pyurg.Urg()
urg.set_urg('COM5')
plt.ion()
axis = plt.gca()
while True:
status = urg.request_me(0,1080,num = 1)
urg.check_status(status)
dist, intensity, timestamp = urg.get_distance_and_intensity()
x,y = urg.convert_to_x_y(dist)
plt.plot(x,y)
plt.draw()
axis.clear()
time.sleep(0.01)
if __name__=="__main__":
draw()
Il suffit de l'afficher pour le moment, et rien de particulier ne sera fait à partir de là.
import pyurg
import matplotlib.pyplot as plt
import time
Importation de la bibliothèque. pyurg (pour utiliser URG) matplotlib (dessiner sur le graphique) l'heure de dormir)
def draw():
urg = pyurg.Urg()
urg.set_urg('COM5')
plt.ion()
axis = plt.gca()
while True:
status = urg.request_me(0,1080,num = 1)
urg.check_status(status)
dist, intensity, timestamp = urg.get_distance_and_intensity()
x,y = urg.convert_to_x_y(dist)
plt.plot(x,y)
plt.draw()
axis.clear()
time.sleep(0.01)
urg est connecté à COM5. Entrez en mode interactif avec plt.ion ().
status = urg.request_me(0,1080,num = 1) Demander une demande de mesure à l'urgence en mode ME. (Dans ce cas, mesurez les étapes 0-1080 une fois)
urg.get_distance_and_intensity() Recevez les données à urg.convert_to_x_y(dist) Convertir en données x, y avec.
Après cela, si vous tracez et dessinez, le graphique sera affiché.
Puisqu'une boucle infinie est créée avec while, elle peut être affichée lors de la mise à jour des données dans l'ordre chronologique.
Cela fonctionne comme ça.
Recommended Posts