¿Por qué MATLAB es una inversión que vale la pena en diseño eléctrico? [cerrado]

1

¿MATLAB es una inversión que vale la pena al desarrollar diseños de circuitos semi-estándar? tales como fitlering, DSP, fuentes de alimentación, cosas habituales que todos encontramos. Por lo que he leído y usado, proporciona un gran diseño de filtro, una interfaz fácil para los cálculos matemáticos y un diseño a nivel de bloque utilizando Simulink y algunas cosas ultra especializadas.

    
pregunta

5 respuestas

2

Estoy ligeramente sesgado en mis puntos de vista de Matlab, ya que lo he estado usando durante décadas. También formo parte de su consejo asesor.

Los beneficios inmediatos de Matlab son las oportunidades de trabajo. Al poder incluir en su CV los x años de uso de Simulink (tm) en un modelo multidominio para optimizar el tiempo de comercialización de un nuevo programa, el volumen habla.

Matlab en su núcleo es un lenguaje de programación escrito por matemáticos para matemáticos. Hay aspectos de matlab-script que parecen semantecas de diseño realmente deficientes, pero tienen sentido desde una perspectiva matemática.

Personalmente python + numpy + scipy + matplotlib > Matlab. Si agrega Simulink ... puedo describir una unidad de motor BLAC de 30kVA (3 fases, inversor, control, motor, respuesta de carga) en Python y proporcionar resultados comparables al sistema real y un modelo de enlace simultáneo. Eso no significa que otros puedan fácilmente tomar mi código para determinar las respuestas del sistema.

Ahora Simulink ... Simulink es un conjunto muy poderoso de herramientas para simular sistemas. Si usted es un diseñador de circuitos, puede cuestionar la utilidad de este tema en más de ... SIMextrix pero eso es porque SIMextrix es un simulador de especias y Simulink es un simulador de sistemas. Simulink puede simular circuitos eléctricos, hidráulicos, mecánicos, fluidos, etc., pero no lo hace tan bien como las aplicaciones dedicadas. Sin embargo, esas aplicaciones dedicadas no describen otros dominios físicos. Entonces, en el momento en que necesites una simulación entre dominios, ¿qué vas a hacer? necesita una suite que pueda atender esto para luego proporcionar información específica del dominio a las suites de diseño más detalladas.

En segundo lugar, está el concepto de "diseño de base de modelo", en el que un modelo de enlace simultáneo captura la intención de un modelo de sistema para que la gestión de requisitos facilite finalmente la generación de autocódigo. Cuando los subsistemas / bloques están vinculados a los requisitos (por ejemplo, en DOORS o ... sobresalga si es necesario) un equipo de diseño puede obtener cobertura y proporcionar un rastro auditable si el entorno empresarial en el que opera tiene algún tipo de supervisión por parte de la agencia

    
respondido por el JonRB
2

Directamente, nada, aparte de la familiaridad como se enseña en varias escuelas de ingeniería. Sin embargo, hay una gran cantidad de códigos heredados y cajas de herramientas que están construidas en Matlab (ya sea por mathworks o por terceros) que pueden ser muy poderosas.

Bueno, supongo que Matlab también se puede usar para generar código para el procesamiento de señales para una variedad de sistemas (incluida la generación de C y Verilog), lo que podría ser un buen ahorro de tiempo en ciertas circunstancias. Sin embargo, no estoy seguro de cómo es la capacidad de mantenimiento de ese código generado.

Aparte de eso, el lenguaje de "programación" de Matlab es absolutamente horrible. Es un excelente ejemplo de un lenguaje que ha evolucionado orgánicamente a lo largo de muchos, muchos años, mientras mantiene la compatibilidad hacia atrás. Como resultado, la semántica del lenguaje en sí tiene serias deficiencias. Hace varios años tuve que armar una pequeña interfaz gráfica de usuario en Matlab, y eso requería una gran cantidad de trucos increíblemente feos para solucionar la mecánica básica del lenguaje, como el alcance variable y la incapacidad de transmitir algo por referencia, entre otras cosas. . Hacer cosas simples como la manipulación de bits es como tirar los dientes. Hace un tiempo vi una secuencia de comandos de python que estaba haciendo la manipulación de bits esencialmente convirtiendo todo en cadenas y haciendo operaciones de cadena ... aparentemente fue la primera secuencia de comandos que el tipo escribió en python después de escribir código en Matlab. Otro investigador que conozco ha trabajado exclusivamente en Matlab durante bastante tiempo, y ahora que tiene que trabajar con lenguajes de programación normales (en su mayoría C y C ++), básicamente tiene que desaprender la mayoría de las técnicas de Matlab con las que está familiarizado (por ejemplo, Yoda, "debes desaprender lo que has aprendido").

    
respondido por el alex.forencich
1

MATLAB no se trata realmente de diseñar circuitos. Es un lenguaje de programación e IDE (Entorno de Desarrollo Integrado) que está dirigido específicamente a hacer cosas matemáticas. Puede ser más fácil y más eficiente hacer cálculos de números pesados en MATLAB que en muchos lenguajes de programación convencionales.

Si está dispuesto a pagar más, hay todo tipo de bibliotecas que pueden serle útiles.

Y, como Brian Drummond ha sugerido, si solo quieres jugar, Octave no está tan pulido como MATLAB, pero es altamente compatible con él.

Por lo que vale, mi experiencia con MATLAB ha sido principalmente en el procesamiento de imágenes digitales, nada que ver con el diseño de circuitos.

    
respondido por el Simon B
1

No es una buena inversión. Existen varias alternativas gratuitas que cumplen los mismos requisitos para el desarrollo de algoritmos y el modelado de alto nivel que son casi 100% compatibles con el código, lo que significa que sus habilidades se transferirán directamente a Matlab si / cuando alguna vez sea apropiado para usted.

Resulta que utilizo GNU Octave para desarrollar algoritmos de procesamiento de señales e imágenes, e intercambio de código regularmente con un colega que usa Matlab, con solo unos pocos problemas de compatibilidad menores que son fáciles de solucionar.

    
respondido por el Dave Tweed
1

MATLAB se suministra a universidades y estudiantes en condiciones muy concesionarias.

Por lo tanto, cuando contrate a un nuevo graduado, ella probablemente conocerá MATLAB y usted puede evitar el costo de que aprendan algún otro paquete y se lo lleven consigo cuando vayan al próximo trabajo. Si tienes un montón de cajas de herramientas y licencias flotantes es bastante caro.

Tenía un tipo que trabajaba con él para desarrollar algunos algoritmos de procesamiento de señales que fueron trasladados a FPGA. Funcionó bien para ese proyecto. El software Simulink es bueno para probar algoritmos de control.

Considere las alternativas gratuitas de código abierto.

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas