Options de Programmation

Il existe trois options recommandées pour les équipes lorsqu’elles programment un robot pour accomplir diverses tâches : Blocs, OnBot Java et Android Studio.

Blocs

L’outil de programmation Blocs est un moyen simple de coder des actions simples pour le robot. Il possède une conception colorée et ressemble à des Legos, et inclut des sons de blocs qui s’emboîtent.

À l’aide d’un appareil et d’un téléphone contrôleur de robot, connectez votre appareil au Wi-Fi du téléphone en cliquant sur les trois points en haut à droite du RC et sélectionnez « Program & Manage ». Cela affichera le SSID WiFi et le mot de passe pour que vous puissiez vous connecter. Allez dans votre navigateur (de préférence Chrome, bien qu’un autre navigateur moderne puisse fonctionner) et entrez l’adresse indiquée dans le RC.

Avantages

  • Idéal pour les débutants : l’une des options les plus faciles et les plus simples à utiliser.

  • Facile à mettre en place : nécessite un appareil (ordinateur portable, Chromebook, tablette) et un téléphone dans l’écran Programmer & Gérer

  • Les programmes peuvent être enregistrés directement sur le téléphone

    • Les changements peuvent être effectués rapidement

  • Ne nécessite pas de connexion Wi-Fi externe

Désavantages

  • Non recommandé si vous êtes déjà familiarisé avec un certain type de programmation.

    • Il s’agit avant tout d’un outil pédagogique destiné aux personnes n’ayant aucune expérience en matière de programmation.

  • Cela changera votre réseau Wi-Fi principal en réseau Wi-Fi direct Robot Controller’s et vous ne pourrez donc pas accéder à Internet lorsque vous serez connecté à ce réseau particulier.

    • Les équipes peuvent contourner ce problème en achetant un module Wi-Fi externe qui permet aux ordinateurs de gérer 2 réseaux Wi-Fi à la fois.

  • Sacrifie la flexibilité et l’application à la simplicité

  • Ne l’utilisez jamais sur un téléphone, sauf si vous êtes à court d’options. (Pas adapté aux téléphones)

    • Vous risquez de faire un plus grand gâchis si vous essayez de le faire.

OnBot Java

OnBot Java utilise une méthode similaire qui consiste à utiliser un navigateur pour coder et enregistrer directement sur le téléphone. La différence est que c’est un langage de programmation appelé Java qui est utilisé.

Avantages

  • Recommandé si vous apprenez ou avez appris à programmer, encore mieux si vous connaissez un peu Java.

  • Une plus grande flexibilité que les Blocs

  • De nombreuses autres ressources sont disponibles si vous avez besoin d’aide.

  • Plus applicable au monde réel que les Blocs

  • Maintient la plupart des avantages des Blocs

Désavantages

  • La connexion au réseau Wi-Fi du contrôleur du robot vous empêchera d’utiliser tout ce qui se trouve sur Internet, y compris les didacticiels vidéo et les communications en ligne.

  • L’utilisation de bibliothèques externes est difficile, voire impossible

  • Courbe d’apprentissage plus raide que celle des Blocs

Android Studio

Android Studio est un environnement de développement intégré (IDE) complet qui utilise Java pour programmer les téléphones. Au lieu d’utiliser un navigateur pour télécharger le code, Android Studio compilera le code de votre Robot Controller dans un fichier .apk (un programme d’installation d’application) et l’installera sur le téléphone.

Avantages

  • Recommandé si vous apprenez ou avez appris à programmer, encore mieux si vous connaissez un peu Java.

  • Beaucoup plus de flexibilité que les Blocs.

  • Beaucoup plus facile d’intégrer des bibliothèques comme FTC Dashboard, FTCLib, et Road Runner.

  • Il est possible d’utiliser une connexion USB au téléphone RC ou une connexion sans fil pour télécharger le code.

  • Débogage en temps réel

  • Nombreuses ressources pour Java, Android Studio et IDEA

  • Peut utiliser d’autres langages de programmation

Désavantages

  • La connexion au réseau Wi-Fi du contrôleur du robot vous empêchera d’utiliser tout ce qui se trouve sur Internet, y compris les tutoriels vidéo et la communication en ligne, à moins que vous ne disposiez d’un second adaptateur Wifi (facile et peu cher).

  • Processus d’installation relativement facile, mais long et lourd (3 Go de fichiers entre Android Studio, FtcRobotController et d’autres bibliothèques).

  • Les problèmes peuvent être difficiles à diagnostiquer et à résoudre

Autres langages de programmation

Kotlin

Kotlin est un langage de programmation relativement nouveau et en pleine expansion, développé par Jetbrains, le créateur de l’IDE IntelliJ, sur lequel est basé Android Studio. Kotlin a été conçu pour être totalement compatible avec Java, tout en étant plus facile à utiliser. Google l’a récemment annoncé comme langage officiel d’Android, puis a annoncé qu’il allait passer à « Kotlin first » tout en conservant le support de Java.

Avantages

  • Code concis, lisible et facile à modifier

    • Facile à écrire car il faut beaucoup moins de code pour faire la même chose.

  • L’inférence de type optionnelle et un système de type plus fort que Java

  • Sécurité nulle

  • Sécurité des fils

  • Programmation fonctionnelle

  • Intégration transparente avec le code et les bibliothèques Java

  • Transition très facile à partir de Java

Désavantages

  • Pas encore largement utilisé dans FTC®

  • Nouveau et disposant de moins de ressources communautaires pour la formation

  • Non recommandé pour les programmeurs qui ont besoin d’une aide importante de la part d’autres équipes.

C et C++

C et C++ sont des langages de programmation natifs compatibles avec Android. Très peu d’équipes ont utilisé le C++. Il n’est généralement utilisé que pour une partie du code, la majeure partie étant composée de Java ou de Kotlin.

Avantages

  • Exécution rapide pour les applications très gourmandes en ressources.

  • Prise en charge d’un plus grand nombre de bibliothèques

Désavantages

  • Rarement nécessaire

  • Très difficile à mettre en place

  • Code difficile à déboguer

  • Très peu d’équipes peuvent vous aider

  • Très peu de ressources en ligne