Réserver une Démo
Pré. Proc.

Exemple Simulation de circuit d'amplificateur opérationnel

Pour cet exemple, nous parcourons la création d'un modèle SysPhS pour un circuit électronique simple, puis utilisons une simulation pour prédire et cartographier le comportement de ce circuit.

Prérequis

L'exécution de cette simulation nécessite :

  • OpenModelica ou
  • Simulink et Simscape de MATLAB

Diagramme de circuit

Le circuit électronique que nous allons modéliser est illustré dans cette figure, en utilisant la notation standard des circuits électroniques.

Le circuit de cet exemple comprendra une source de signal sine , une terre, deux résistances et un circuit intégré d'amplificateur OpAmp. La figure suivante montre le diagramme résultant, tel que généré à partir d'un diagramme SysML utilisant SysPhS, dans une application externe - dans ce cas Modelica.

Créer Modèle SysML

Ce tableau montre comment nous pouvons créer un modèle SysML complet pour représenter le circuit, en commençant par les types de niveau le plus bas et en construisant le modèle une étape à la fois.

Composant

Action

Blocs

Dans SysML, en utilisant SysPhS, le circuit et chacun des types de composants sont représentés sous forme de blocs.

Dans un diagramme de définition Bloc (BDD), créez un composant de circuit Bloc . Le circuit est composé de cinq parties : un amplificateur opérationnel, une source de signal, un convertisseur de signal en tension, une masse et une résistance. Ces parties sont de types différents, avec des comportements différents.

Les blocs clés, y compris l'OpAmp, la masse et la résistance, sont accessibles sous forme de blocs prédéfinis, à l'aide des Motifs de composants SysPhS. Cependant, pour plus de clarté, nous allons exécuter leur création à partir de zéro.

Créez un Bloc SysPhS pour chacun des types de composants. Les composants de la définition Bloc interne du circuit (IBD) seront connectés via des ports, qui représentent pins électriques. Ceux-ci sont définis dans le BDD. La résistance possède une broche positive et une broche négative. La terre n'a qu'une seule broche, qui est positive. L'électricité (charge électrique) est transmise via les pins . Les deux ports sont nommés « p » (positif) et « n » (négatif), et ils sont de type ChargeFlowElement.

Cette figure montre le BDD, avec des blocs définissant le type de composants utilisés. Cela comprend une onde sine source de signal, un convertisseur de tension de signal, une masse, un type de résistance et un type d'amplificateur opérationnel.

Note : ces blocs sont créés à partir de la boîte à outils SysPhS à l'aide de blocs Modelica ou de blocs Simulink. Vous pouvez saisir chaque Bloc dans les deux outils. Pour plus d'informations, consultez la rubrique d'aide Définition de blocs comme étant à la fois Modelica et Simulink .

Ports Phs

Les types de valeur utilisés pour les ports sont prédéfinis dans les bibliothèques Simulation SysPhS. Les deux quantités clés utilisées sont les types de valeur ChargeFlowElement et RealSignalInElement,

Cette figure montre le Bloc OpAmp dans le diagramme de définition Bloc , avec les ports du Bloc OpAmp définis sur le type de valeur ChargeFlowElement, et où celui-ci est référencé dans la fenêtre Navigateur .

Le connecteur d'importation vers le Paquetage des types communs montre comment ceux-ci doivent être définis. Pour plus d'informations sur l'importation Paquetage (encerclée), consultez Référencement des bibliothèques Simulation SysPhS Rubrique d'aide.

Constantes Phs

Les blocs Résistance et Onde Sine ont tous deux des propriétés définies dans leurs composants respectifs dans MATLAB et Modelica.

Prenons l'exemple de la résistance. Pour ces composants, dans leurs outils respectifs, nous devons définir une valeur de résistance en Ohms. Pour la plupart des circuits, il peut y avoir plusieurs composants de résistance dérivés de ce Bloc de résistance, modélisés comme composants dans les diagrammes IBD ou Paramétriques . Par conséquent, leur valeur (en Ohms) sera définie dans le diagramme IBD, Paramétriques ou éventuellement dans les jeux de données de simulation.

Pour définir la propriété définissant la résistance, nous devons créer une variable Phs « r ». La valeur initiale n'est pas définie.

Note : les Motifs SysPhS incluent un Bloc de type Résistance déjà construit.

Pour définir les valeurs de résistance dans chaque composant individuel (partie), consultez la ligne Valeurs initiales de ce tableau , qui affiche les blocs définis avec les ports et les constantes Phs.

Structure interne

Pour la structure interne, nous créons un Bloc avec un diagramme IBD enfant.

  • Créer un Bloc pour un circuit OpAmp inverseur
  • Créez ensuite un Diagramme Interne de Bloc (IBD) à l'aide de l'option du menu contextuel :
    Créer un nouveau Diagramme enfant | diagramme de définition Bloc interne
  • Double-cliquez pour ouvrir l'IBD
  • Définissez le diagramme pour afficher uniquement le nom du port, en utilisant :
    - F5 | Élément | Apparence de l'élément
  • Désactivez ces deux options :
    - Montrer des stéréotypes
    - Afficher Type de propriété
    Cela affichera alors uniquement le port et Type
Sur l'IBD, créez des pièces et connectez-les :
  • Depuis le Navigateur , faites glisser les Blocs sur l'IBD en tant que Parties ( Propriétés )
  • Pour visualiser les pièces dans les compartiments, supprimez-les du diagramme
    Note : définissez l'option Coller « Éléments structurels » sur « TOUS »
  • Sinon, dans la vue Fonctionnalités , pour l'onglet 'Interaction' cliquez sur le bouton Tous, et pour l'onglet 'Parts / Propriétés ' cliquez sur le bouton Tous.
  • Ajoutez des propriétés pour le signal source, le convertisseur, 2 résistances, l'amplificateur opérationnel et la terre, saisies par les blocs correspondants

Fixations

Pour modéliser le câblage de ces composants :

  • Définissez les connexions entre les ports avec des connecteurs de type Connecteur.

Notez que cela suit la même structure que le diagramme de circuit d'origine, mais les symboles de chaque composant ont été remplacés par des propriétés typées par les blocs que nous avons définis.

Valeurs initiales

Comme il y a deux résistances, la résistance d'entrée (RIn) et la résistance de rétroaction (Rf) doivent être créées comme deux Propriétés (pièces) différentes dans l'IBD, provenant du Bloc de résistances, car chacune d'elles aura des valeurs différentes. Les valeurs doivent être définies dans la fenêtre Propriétés , onglet « Propriété », champ « Initiale ».

Pour le InputControllingSignal, des valeurs initiales sont requises pour l'amplitude et la fréquence.

En revenant au BDD, vous devriez maintenant avoir le Bloc InvertOpAmp affiché comme suit :

Configurer le comportement Simulation

Ce tableau montre les étapes détaillées de la configuration de SysMLSim.

Étape

Action

Créer un artefact SysMLSimConfiguration

  • Ouvrez le diagramme de définition Bloc
  • Cliquez sur l'espace ouvert dans le diagramme
  • Appuyez sur la barre d'espace
  • Dans le sous-menu « Artefacts », sélectionnez « Configuration SysMLSim »
    Cela crée un nouvel artefact de configuration SysMLSim :

Définir le Paquetage

  • Double-cliquez sur l'artefact de configuration SysMLSim
    Cela ouvre la fenêtre de configuration de SysML
  • Dans le champ ' Paquetage ' cliquez sur le bouton [...] et sélectionnez le Paquetage contenant le diagramme SysML :

Configurer Modelica ou Simulink

Dans la liste déroulante supérieure, vous pouvez sélectionner l'outil de simulation à utiliser :

  • Modèleica
  • Simulink
Pour plus de détails sur ces paramètres, consultez la rubrique d'aide Configurer Simulation SysML .

Régler le Bloc pour simuler

  • Dans la liste de gauche, sous « Nom », recherchez « InvertOpAmp »
  • Dans la colonne « Valeur », cliquez sur le menu déroulant et sélectionnez « SysMLSimModel »

Sélectionner Propriétés à tracer

Vous pouvez maintenant sélectionner les Propriétés à tracer :

  • Dans le volet de droite, sélectionnez les ports à tracer

Exécuter Simulation

Dans l'onglet « Simulation », cliquez sur le bouton Résoudre. Cet exemple montre un tracé généré dans Modelica :

Dans la légende, vous pouvez voir LM741.out.v et 'Signal.v qui sont tracés, et les faire correspondre avec les deux propriétés sélectionnées sous Propriétés à tracer .

Vue le Modèle dans Modelica ou Simulink

Pour visualiser le modèle généré dans les applications externes, Modelica ou Simulink, consultez la rubrique d'aide Vue le Modèle dans Modelica ou Simulink , ainsi que des conseils pour déboguer les problèmes dans le code généré.

Apprendre encore plus