[PYTHON] Modifiez et déboguez le code dans Raspberry Pi avec la fonction de connexion SSH de VSCode

Qu'est-ce que VSCode?

Abréviation de «Visual Studio Code», un éditeur de code source développé par Microsoft. On dit qu'il gagne rapidement en popularité en tant qu'éditeur gratuit, léger et multifonctionnel.

À partir de la version 2019/10, la fonction de connexion SSH à RaspberryPi (ARM v8) est officiellement prise en charge, donc J'ai écrit un article sur le résultat de l'essai d'édition à distance du code Python dans Raspberry Pi.

** En conclusion, nous avons pu réaliser un environnement de développement distant confortable, tel que le débogage avec des points d'arrêt! ** **

Les choses nécessaires

・ RaspberryPi (RaspberryPi3 Model B dans cet exemple) -PC connecté au même réseau que ci-dessus (Windows 10 dans cet exemple) -Visual Studio Code 1.39.2 ou version ultérieure (installé sur le PC ci-dessus, 1.44.2 est utilisé dans cet exemple)

procédure

J'ai fait référence à l'article suivant https://qiita.com/hukatama024e/items/9f96730381f0a34c6da6

① Paramètres de connexion SSH et sauvegarde du fichier de configuration

[Cet article "Pour l'authentification par clé publique"](https://qiita.com/c60evaporator/items/2384416f1122ae124f50#%E5%85%AC%E9%96%8B%E9%8D%B5%E8%AA%8D % E8% A8% BC% E3% 81% AE% E5% A0% B4% E5% 90% 88% E6% 89% 8B% E9% A0% 86) pour établir l'authentification par clé publique SSH et le fichier de configuration Veuillez sauvegarder.

De plus, veuillez enregistrer le fichier de configuration dans le dossier suivant du PC C: \ Users \ [nom d'utilisateur] \ .ssh

② Installez VS Code

Veuillez installer VS Code sur ** côté PC **

Article de référence https://qiita.com/psychoroid/items/7d85ae6bade4a67aedb1

③ Installation de développement à distance

Démarrez VSCode et suivez les étapes ci-dessous pour installer Remote Development remotedevelopment.png

④ Connectez-vous à Raspberry Pi

Suivez les étapes ci-dessous pour sélectionner le serveur SSH auquel se connecter = RaspberryPi («raspi» dans la figure ci-dessous) sshtargets.png

Une nouvelle fenêtre s'ouvrira et il vous sera demandé de sélectionner une plateforme, alors choisissez Linux selectplatform.png

Il vous sera demandé un mot de passe pour l'authentification par clé publique, entrez-le et appuyez sur Entrée sshkey.png

La première connexion prend du temps, alors attendez un peu. En cas de succès, vous pouvez accéder aux fichiers du Raspberry Pi en cliquant sur le cadre rouge dans la figure ci-dessous. home.png

⑤ Créer du code dans Raspberry Pi

À partir de là, vous pouvez utiliser la console, mais nous procéderons à la description en supposant que vous fonctionnerez avec l'interface graphique.

** - Créer un fichier vide ** Créez un fichier vide en sélectionnant "Fichier" -> "Nouveau fichier" makenewfile.png

** ・ Description du contenu du code ** Par exemple, écrivez le code Python suivant (calculez et affichez l'écart type avec numpy) pythontestcode.png

** - Enregistrer le code ** "Fichier" -> "Enregistrer sous" -> spécifier le chemin de sauvegarde -> "OK" filesave.png savepython.png

** - Essayez de courir depuis la console ** Ouvrez la console en sélectionnant "Terminal" → "Nouveau Terminal" openterminal.png Allez dans le dossier avec le code et

python3 test.py

Exécutez le code Python sur runconsole.png Vous pouvez voir que le résultat est normalement sorti sur la console.

⑥ Débogage de l'exécution du code créé

Avec l'interface graphique VS Code, vous pouvez même déboguer le code. Vous pouvez également vous arrêter à un point d'arrêt, il ne fait donc aucun doute que l'efficacité du développement augmentera!

** - Installer le linter Python ** Si vous l'avez déjà installé localement sur votre PC, cliquez sur «installer en SSH: [nom d'hôte]» pour installer également le linter Python dans votre Raspberry Pi. installpythonlinter.png

Lorsque l'installation est terminée, "Recharger requis" apparaîtra, cliquez donc dessus pour redémarrer. reloadrequired.png

** - Ouvrez un dossier de travail (généralement le dossier avec le code) ** openfolder.png

** - Exécutez le débogage ** Après avoir ouvert le code que vous souhaitez déboguer, exécutez l'opération suivante runanddebug.png

La console s'ouvre et le débogage est effectué debugconsole.png

** ・ Vérification du fonctionnement des points d'arrêt ** Comme le montre la figure ci-dessous, vous pouvez arrêter le traitement à un point d'arrêt et vérifier le contenu des variables. debugbreakpoint.png

Vous pouvez maintenant déboguer à distance le code dans Raspberry Pi avec VS Code. ** L'environnement pour un développement rapide avec GUI est prêt et je suis personnellement satisfait du résultat! ** **

Addendum: Lorsqu'une erreur se produit lors de l'importation d'une bibliothèque installée avec pip

Lors de la création d'un environnement avec pyenv côté RaspberryPi J'obtiens l'erreur suivante lors de l'importation d'une bibliothèque installée avec pip.

Détails de l'erreur: impossible d'importer le pylint'bluepy '(erreur d'importation) unableimport.png

Cause

Comme décrit dans ici Il semble que la cause en soit que l'emplacement de Python référencé lors du débogage avec VS Code et Python de pyenv soit différent.

approche

/home/[nom_utilisateur///.vscode-server/extensions/ms-python.python-‥/pythonFiles/.vscode C'est dedans settings.json Ouvrez et ajoutez la dernière ligne ci-dessous

settings.json


{
    //
    //Description originale
    //
    "python.pythonPath": "[Emplacement Python pour pyenv]"
}

Si vous obtenez toujours une erreur

Créez un dossier ".vscode" dans le dossier de travail ouvert dans ⑥, Créez le fichier settings.json suivant dans le dossier

settings.json


{
    "python.pythonPath": "[Emplacement Python pour pyenv]"
}

Cela devrait forcer Python de pyenv à fonctionner

Recommended Posts

Modifiez et déboguez le code dans Raspberry Pi avec la fonction de connexion SSH de VSCode
Modifiez le fichier du serveur de destination de la connexion SSH sur le serveur avec VS Code
Compilation croisée de Raspberry Pi et création d'un environnement de développement de débogage à distance avec VS Code
Déboguer Python avec VS Code
Paramètres pour entrer et déboguer le contenu de la bibliothèque avec VS Code
C'était génial d'éditer le fichier Python dans Raspberry Pi avec la fonction à distance d'Atom
Bénéficiez de l'environnement le plus puissant avec VS Code, Remote-Containers et Remote Docker-Daemon
Paramètres de débogage dans un environnement virtuel lors de l'utilisation de Pipenv avec VSCode
Acquérir la valeur du capteur de Grove Pi + avec Raspberry Pi et la stocker dans Kintone
Application de notification de message Rabbit MQ avec Growl en Python ~ avec Raspeye et Julius ~
Impressions et mémorandum lors de la première utilisation de VScode
Surveillance des animaux avec Rekognition et Raspberry pi
Passez PYTHONPATH en 1 minute avec VS Code
Trouvez-le dans la file d'attente et modifiez-le
[Janvier 2020] Commençons sérieusement le «conteneur de développement» explosif avec le conteneur distant de VS Code.
Fabriquez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 3
J'ai tweeté l'éclairement de la pièce avec Raspberry Pi, Arduino et un capteur optique
Apprenez les tendances des mots clés dans les textes avec Jubatus et classez vos textes d'entrée
Construction de VPN de passerelle IPsec avec CentOS 8 et openSUSE (Raspberry Pi) --2 Confirmation de connexion VPN StrongSwan
Connectez-vous à un serveur distant avec SSH
Déboguer avec VS Code en utilisant Boost Python Numpy
MQTT Radicon Car avec Arduino et Raspberry
Observez le groupe de météores Futago avec RaspberryPi4
Connexion facile entre Raspberry Pi et AWS IoT
Utiliser Python dans un environnement Anaconda avec VS Code
Obtenez la température et l'humidité avec DHT11 et Raspberry Pi
Exemple de programme de connexion Raspberry Pi et AWS IoT
Réalisez une maison super IoT en acquérant des données de capteur dans la maison avec Raspberry Pi
Décrivez la destination ssh en plusieurs étapes dans la configuration, connectez-vous facilement et copiez le fichier avec scp
Construction VPN simple de la passerelle IPsec avec Ubuntu 20.04 et Raspberry Pi --2 Confirmation de connexion VPN StrongSwan
J'ai essayé de créer un environnement dans lequel le travail dans le conteneur Docker sur le serveur distant peut être effectué directement à partir du code VS local avec une connexion SSH
Enregistrez la température et l'humidité avec systemd sur Raspberry Pi
Apprentissage automatique avec Raspberry Pi 4 et Coral USB Accelerator
IoT facile pour démarrer avec Raspeye et MESH
Visualisons la pièce avec tarte aux râpes, partie 1
Paramètres VS Code pour le développement en Python avec achèvement
Détecter l'état de port du masque avec OpenCV et Raspberry Pi
Relancer la recherche de symboles dans l'espace de travail Python avec VS Code
Prenez la valeur du thermo-hygromètre SwitchBot avec Raspberry Pi
Mesurez la température et l'humidité avec Raspberry Pi3 et visualisez avec Ambient
Changer les valeurs du thermo-hygromètre Bot avec Raspberry Pi
Ubuntu 20.04 sur raspberry pi 4 avec OpenCV et utilisation avec python
Déboguer à distance l'environnement Django créé avec docker-compose avec VS Code
Résoudre les problèmes liés à l'installation d'OpenCV sur Raspberry Pi et à la capture
Notez ce que vous voulez faire à l'avenir avec Razpai
Vérifions et formons statiquement le code du test automatique E2E écrit en Python [VS Code]