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.
|
Fixations |
Pour modéliser le câblage de ces composants :
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 |
|
Définir le Paquetage |
|
Configurer Modelica ou Simulink |
Dans la liste déroulante supérieure, vous pouvez sélectionner l'outil de simulation à utiliser :
|
Régler le Bloc pour simuler |
|
Sélectionner Propriétés à tracer |
Vous pouvez maintenant sélectionner les Propriétés à 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é.