Calculatrice graphique programmable pour l'électronique

Par Cédric Bérenger | 24 février 2024

Calculatrice codée en javascript, dédiée à l'électronique avec le support des préfixes SI (kilo,Méga, Giga, pico, nano etc.), affichage en notation ingénieur, capacités graphiques et fonctions (langage javascript). équations électroniques à portée de main.

Je continue la série de revue de petits utilitaires que j'ai codé en open-source sur mon gitlab https://gitlab.com/cb-embedded-open.  Aujourd'hui nous allons voir rapidement une petite calculatrice scientifique programmable pour l'électronique codée en javascript. Le projet disponible à cette adresse : https://gitlab.com/cb-embedded-open/electronic-calculator 

Accès en ligne via GitLab

Gitlab pages: https://electronic-calculator-cb-embedded-open-83a45636cca52caf1d6f7a8f.gitlab.io/

Fonctionne sur téléphone portable dans chrome. Supporte le retour haptique des touches ainsi que le passage en plein écran (cliquer sur le bouton clignotant).

Mode Calcul

Le mode de calcul basique, avec gestion des préfixes SI pour le calcul: les résultats sont données en utilisant le préfixe SI le plus proche. La calculatrice dispose de plusieurs mémoires et d'un accumulateur.

La frappe au clavier écrit directement dans l'invite de série. L'invite de série utilise la méthode eval() et permet la saisie rapide de calculs complexes directement. Il est tout à fait possible d'utiliser des variables. Attention, les variables k, M, G, p, n, pi, u et m sont directement liées aux constantes mathématiques et aux préfixes SI. Il ne faut pas les redéfinir. Les Autres variables peuvent être modifiés sans problèmes.

Il est également, en plus des variables, possible de définir des fonctions en utilisant la syntaxe des lambda javascript: circle_area = r => pi * r *r.

Fonction Programmeur

Mode avec gestion des différentes bases. (Binaire, hexadécimal ou base arbitraire).

Ce mode s'appuie sur l'interpréteur javascript. On utilise 0x et 0b pour préciser la base.

Mode Scratchpad Javascript

Permet d'avoir un scratchpad et de définir des équations de fonctions pour le mode graphique. Il est également possible d'ajuster les plages des curseurs du mode graphique.

Mode graphique

Différents curseurs rangeA, rangeB, rangeC, rangeD sont associés à des variables utilisable dans le mode script ou dans l'invite pour définir des fonctions. Ajuster ces curseurs permet une visualisation interactive.

Formulaire de fonctions électroniques

Un ensemble de fonctions pour un calcul rapide des fréquences d'oscillation de tank LC, les impédances de composants passifs, fréquences et longueurs d'ondes, temps de charges et décharges de condensateurs, inductances mutuelles et coefficients de couplages.

Cliquer sur l'un des boutons de formule saisie la formule correspondante dans l'invite. Il est possible de modifier les fonctions f1, f2, f3 dans l'invite. Par exemple, pour une inductance de 1uH, il est possible d'afficher la fréquence de résonance en fonction de la valeur de capa : f1= x =>LC_resonant_frequency(1*u,x)