6 resultados para Linguagens de programação para PLCs
em Repositório Científico da Universidade de Évora - Portugal
Resumo:
É do conhecimento geral de que, hoje em dia, a tecnologia evolui rapidamente. São criadas novas arquitecturas para resolver determinadas limitações ou problemas. Por vezes, essa evolução é pacífica e não requer necessidade de adaptação e, por outras, essa evolução pode Implicar mudanças. As linguagens de programação são, desde sempre, o principal elo de comunicação entre o programador e o computador. Novas linguagens continuam a aparecer e outras estão sempre em desenvolvimento para se adaptarem a novos conceitos e paradigmas. Isto requer um esforço extra para o programador, que tem de estar sempre atento a estas mudanças. A Programação Visual pode ser uma solução para este problema. Exprimir funções como módulos que recebem determinado Input e retomam determinado output poderá ajudar os programadores espalhados pelo mundo, através da possibilidade de lhes dar uma margem para se abstraírem de pormenores de baixo nível relacionados com uma arquitectura específica. Esta tese não só mostra como combinar as capacidades do CeII/B.E. (que tem uma arquitectura multiprocessador heterogénea) com o OpenDX (que tem um ambiente de programação visual), como também demonstra que tal pode ser feito sem grande perda de performance. ABSTRACT; lt is known that nowadays technology develops really fast. New architectures are created ln order to provide new solutions for different technology limitations and problems. Sometimes, this evolution is pacific and there is no need to adapt to new technologies, but things also may require a change every once ln a while. Programming languages have always been the communication bridge between the programmer and the computer. New ones keep coming and other ones keep improving ln order to adapt to new concepts and paradigms. This requires an extra-effort for the programmer, who always needs to be aware of these changes. Visual Programming may be a solution to this problem. Expressing functions as module boxes which receive determined Input and return determined output may help programmers across the world by giving them the possibility to abstract from specific low-level hardware issues. This thesis not only shows how the CeII/B.E. (which has a heterogeneous multi-core architecture) capabilities can be combined with OpenDX (which has a visual programming environment), but also demonstrates that lt can be done without losing much performance.
Resumo:
Neste documento foi feita a apresentação do conceito de Programação Visual, estudados alguns exemplos de Linguagens de Programação Visual e investigado vantagens e desvantagens sobre o seu uso comparativamente à programação tradicional (por texto) e, adicionalmente, foram estudados três jogos para aprender a programar com fortes características visuais. A partir desta investigação, foi criada uma nova Linguagem de Programação Visual(LPV) sendo a base de um prototipo de um jogo para aprender a programar. Este jogo é representado pela deslocação e execução de tarefas feitas por um robô dentro de uma casa, sendo o objetivo do programador colocar objetos nesta casa que manipulam a deslocação do robô dentro desta de forma a resolver um problema; Abstract: A game to learn programming Aplication of concepts of visual programming to create a game to learn how to program In this document we will explain the concept of Visual Programming, study some examples of Visual Programming Languages, analyze some arguments in favor and against its use in comparison to traditional programming (by text) and, additionally, study three games to learn programming with strong visual features. Using this research, a new Visual Programming Language(VPL) was created, being the basis of a prototype of a game to learn programming. This game is represented by the movement and execution of tasks done by a robot inside a house, being the goal of the programmer to place objects in this house that manipulate the movement of the robot inside of it in order to solve a problem.
Resumo:
A interacção dos humanos com os computadores envolve uma combinação das tarefas de programação e de utilização. Nem sempre é explícita a diferença entre as duas tarefas. Introduzir comandos num programa de desenho assistido por computador é utilização ou programação numa linguagem interpretada? Modificar uma folha de cálculo com macros é utilização ou programação? Usar um “Integrated Development Environment” ou IDE para inserir dados num ficheiro é utilização (do IDE) ou programação? A escrita de um texto usando LaTeX ou HTML é utilização ou programação numa “markup language”? Recorrer a um programa de computação simbólica é utilização ou programação? Utilizar um processador de texto é utilização ou programação visual? Ao utilizador não se exige um conhecimento completo de todos os comandos, todos os menus, todos os símbolos do software que utiliza. Nem a memorização da sintaxe e de todos os pormenores de funcionamento de um programa é um atributo necessário ou sequer útil ao utilizador; a concretização desse conhecimento não assegura maior eficiência na utilização. Quando se começa, apenas algumas instruções elementares são recebidas, por vezes de um colega, de um Professor, ou obtidas recorrendo à pesquisa na Internet. Com a familiarização, o utilizador exige mais do Software que usa e de si próprio: um manual passa a ser um recurso de grande utilidade. A confiança conquistada gera, periodicamente, a necessidade de auto-exame e de aumento do âmbito do conhecimento. Desta forma, quem utiliza computadores acaba por ser confrontado com uma tarefa que, efectivamente, pode ser considerada ou requer programação. Põe-se uma questão no imediato (se ninguém decidiu por si) que é a da selecção da linguagem de programação. A abordagem multiparadigma e longa experiência de utilização do C++ tornam-no atractivo para aplicações onde a eficiência se combina com a disponibilidade de estruturas de dados e algoritmos adoptados pela indústria (o que coloquialmente se denomina STL, Standard Template Library, cf. [#breymann, #josuttis], mais geralmente biblioteca Standard). Adicionalmente, linguagens populares como o Java, C# e PHP possuem sintaxes inspiradas e em muitas partes coincidentes com as do C e C++. Por exemplo, um ciclo “for” em Java é parcialmente coincidente com o do C99, que é um sub-conjunto do “for” do C++. São os pormenores, a eficiência e as capacidades do C++ que permitem a criação de software Profissional. Todos os sistemas operativos clássicos (Unix, Microsoft Windows, Linux) dispõem de compiladores, IDE, bibliotecas e são em grande parte construídos recorrendo a C e C++. Relativamente a outras linguagens, a quantidade de ferramentas disponível e o conhecimento adquirido durante décadas é difícil de ignorar. Esse conhecimento faz com que a sintaxe do C++ pareça muito maior do que o estritamente necessário e afaste potenciais interessados. A longa evolução do C++ introduziu também uma diferença no estilo muito marcada. Código dos anos 80 e 90 do século XX é frequentemente menos legível do que o que correntemente se produz. Muitos tutoriais disponíveis online fazem parecer a linguagem menos rigorosa (e mais complexa) do que na realidade é, já que raramente é apresentado o caso geral da sintaxe. Constata-se que muitos autores ainda usam os cabeçalhos do C, quando já não são necessários. Scott Meyers afirma que o C++ é uma federação de linguagens [#scottmeyers] e por esse facto requer perspectivas de abordagem distintas de outras linguagens. Sem alguma sistematização é difícil apreciar a sua compacidade e coerência. Porém, a forma harmoniosa como as componentes sintácticas se encaixam é uma grande mais-valia do C++ só constatada com experimentação e leitura atenta. A presente monografia dirige-se a quem pretenda utilizar o C++ como ferramenta profissional de Software. Em termos de pré-requisitos Académicos, dir-se-á que um curso (1º Ciclo) de Ciência ou de Engenharia aumentará o interesse por certos aspectos mais técnicos da linguagem mas qualquer indivíduo com gosto pela experimentação tirará proveito do conteúdo. Este texto não busca a exaustividade enciclopédica na cobertura do tema. Neste texto forneço, de forma directa, uma introdução ao C++ a qual permite começar a produzir código sem os custos da dispersão de fontes e notações na recolha de informação. Antecipo assim a sua utilização nos Países de Língua Portuguesa, uma vez que os textos que encontrei são ora mais exigentes ora menos completos, frequentemente ambos.
Resumo:
Os estudos que aqui se apresentam correspondem à avaliação da Iniciativa Iniciação à Programação nas Escolas do 1.º ciclo em Portugal (adiante designada de IP1 ou simplesmente Iniciativa) desenvolvida durante o ano letivo de 2015-2016. Considerando a natureza de projeto-piloto da IP1, bem como as suas finalidades e características é adotada uma perspetiva de avaliação global, formativa e participada que assegurou a recolha de informação fundamental aos processos de tomada de decisão que visem o conhecimento sobre a implementação da Iniciativa e a sua eventual generalização à população das escolas do 1.º ciclo em Portugal. Os estudos de avaliação realizados têm como finalidade contribuir para o conhecimento e compreensão aprofundada das condições humanas e materiais em que a iniciativa IP1 foi implementada no conjunto das escolas e dos agrupamentos incluindo aqueles aspetos que possam vir a ser melhorados de modo a aumentar a eficácia de propostas futuras a desenvolver, identificando os pontos fortes e fracos bem como antecipando a avaliação de impacto que terá no momento da sua generalização a toda a população das escolas do 1.º ciclo em Portugal Tratando-se de um projeto-piloto espera-se que os resultados dos estudos de avaliação a realizar possam constituir um contributo para o conhecimento detalhado das estratégias de implementação levadas a cabo pelas Escolas e identificar prioridades, estabelecer procedimentos e requisitos que apoiem os processos de tomada de decisão, adquirindo pela via da investigação e da avaliação, o conhecimento antecipado das condições para efetuar a generalização prevista. A avaliação da IP1 foi desenhada e implementada a partir de duas linhas metodológicas de investigação, distintas, mas complementares e que deram lugar a 4 (quatro) estudos de avaliação. A primeira linha, de natureza quantitativa, inclui os estudos I e II e destina-se à avaliação global da IP1 através da recolha de elementos e indicadores de impacto quer ao nível da Escola quer ao nível dos professores e dos alunos. Os estudos I e II tiveram como opção metodológica o inquérito por questionário. A segunda linha de estudo, com carácter mais qualitativo inclui os estudos III e IV e destina-se a analisar e a compreender de forma mais aprofundada quer as ações realizadas pelas entidades parceiras ao longo da Iniciativa (nomeadamente as estratégias de coordenação, formação, acompanhamento e monitorização da Iniciativa) quer os eventuais impactos da Iniciativa observáveis nas Escolas. O estudo III teve como opções metodológicas a entrevista focus-group aos parceiros e outras entidades institucionais associadas à Iniciativa, a análise de conteúdo de material empírico recolhido através de questões abertas e pela preferência de cenários de alargamento da IP1. O estudo IV teve como opções o estudo de caso que recorreu a visitas “in situ” a escolas envolvidas na IP1. Em cada estudo de caso recorremos à observação de aulas, às entrevistas a professores e alunos e à análise documental, como técnicas de recolha de dados, de acordo com um protocolo de investigação comum a todos estudos. São apresentadas e discutidas as principais conclusões dos estudos de investigação e avaliação realizados, respeitando a estrutura organizativa adotada desde o seu início.
Resumo:
O uso dos computadores em educação tem uma história de décadas, rica e inspiradora de programas e iniciativas muito diversificadas neste domínio. Esta história, tal como se fosse um rio em curso está povoada de pessoas, ideais, conceitos, artefactos e tecnologias, que se vão renovando a cada momento e enfrentando novos desafios. Esta história, incluindo a experiencia e o conhecimento obtidos pelo autor durante a vigência do Projeto Minerva e outros projetos e programas que se lhe seguiram até aos dias de hoje, deu lugar a uma base de conhecimento científico e pedagógico inestimável e constitui um precioso capital, se e quando o usamos, para enfrentar estes novos desafios. Este capital inclui, naturalmente, os sucessos e os insucessos e que podem ser encontrados no curso dessa história. O desenvolvimento das sociedades modernas hoje em dia impõe de forma impressiva novos desafios às instituições educativas, que enfrentam grandes dificuldades em conseguir responder de forma adequada, rápida e eficaz. A transformação social e o ritmo do progresso tecnológico andam de mãos dadas e exercem, em especial nas sociedades desenvolvidas e em desenvolvimento, um duplo efeito: torna a sociedade cada vez mais tecnologicamente evoluída e dependente através da produção e distribuição de forma massiva de artefactos digitais cada vez mais sofisticados e acessíveis aos cidadãos numa lógica de consumo e ao mesmo tempo requer uma adaptação ao estilo de vida digital, decorrente dos processos de distribuição e massificação da tecnologia. Este fenómeno tem impacto em quase todos os sectores da atividade humana. Destacamos aqui apenas o da educação e formação.
Resumo:
O uso dos computadores em educação tem uma história de décadas, rica e inspiradora de programas e iniciativas muito diversificadas neste domínio. Esta história, tal como se fosse um rio em curso está povoada de pessoas, ideais, conceitos, artefactos e tecnologias, que se vão renovando a cada momento e enfrentando novos desafios. Esta história, incluindo a experiencia e o conhecimento obtidos pelo autor durante a vigência do Projeto Minerva e outros projetos e programas que se lhe seguiram até aos dias de hoje, deu lugar a uma base de conhecimento científico e pedagógico inestimável e constitui um precioso capital, se e quando o usamos, para enfrentar estes novos desafios. Este capital inclui, naturalmente, os sucessos e os insucessos e que podem ser encontrados no curso dessa história.