Récemment Google a « amélioré » ses algorithmes de recherche. Dans sa grande bonté paternaliste, celui avec lequel certains d’entre nous ont grandi souhaite nous aider à mieux nous retrouver dans la jungle des informations présentes sur le Web. Depuis quelques jours, je me suis rendu compte effectivement de la différence. Toutes les réponses tournent autour de mes contacts, mes recherches précédentes, mes parcours sur les pages du web. Tout tourner autour de moi. Alors que je lorsque je cherche sur internet les plus intéressant c’est de découvrir ce à quoi je n’avais pas pensé, voilà que Monsieur Google me refait ingurgiter les mêmes infos, plus ou moins. Voilà une affaire qui mérite refléxion, pour de vrai. Certainement que beaucoup, peut-être même la majorité, seront heureux de retrouver plus facilement leur propre monde, une bulle à part plus ou moins grande, plus ou moins suffisante. Mais alors qu’internet sert terriblement bien l’innovation et l’invention, sans doute grâce au facteur aléatoire si cher aux esprits curieux et découvreurs, Google veut nous enlever ce qu’il nous a offert jusqu’à présent.

Il faut faire quelque chose. Trouver des alternatives, libres ou pas, chercher d’autres moyens avant qu’on ne se retrouve seul, chacun dans son coin, avec a quatre, dix, cent ou mille amis tous clonés les uns sur les autres.

Leave A Comment, Written on mai 19th, 2012 , Divers

Remember as3Bonjour native extension ? If yes, you should be waiting for the iOS version. And it is available starting from this morning, same place.

Source code remains unchanged. Only a new specific compilation was needed for iOS native static library. Magic of Poco C++. If you have to thank somebody, thank these guys. Poco framework remains one of the most impressive C++ piece of code.

Webs apps are everywhere, excepting maybe, for the moment, in the industrial applications, even if SCADA systems have been using them quite intensively for years. Is always about HMIs, of course. Why spending months of development for doing basic things that are already available through browsers runtime ? For embedded systems, it was almost impossible to imagine to use a browser till, one day, somebody (let’s say Nokia, Apple and some others) have implemented it on simple mobile phone. And who would have trusted browsers for displaying data on which some operator should rely ? Nobody up to that moment where people started understing that mobile applications are, for some of them, more reliable that a lot of embedded HMIs, due either to the large experience or large number of users(== testers). The purpose, here, is not to demonstrate our opinion of the necessity to finally adopt web technologies in industry and embedded systems (we strongly believe it, for sure), but to talk a bit about how to do.

For our O3S product, which is dedicated to embedded systems, but that is an embedded system itself, we started using Flash/Flex from the very beginning. But today Adobe’s politic is unclear and even if we believe that Flex is a great technology, we don’t know what Apache will do with it. At least, few people are interested in the same topics (multi-OS GUI alternative, Linux included, for example), so we take care about the future exploring other ways.

One of our preferred one is hybrid applications. A bit of Qt, a large portion of WebKit and some HTML5/JavaScript sauce will create a quite similar experience to the Adobe AIR one. Another one, of course, is the « regular » one: HTML server, browser client and WebSockets.

We tried both. Below, the screenshots have been taken with the two different situations: same HTML/Javascript app running inside a Qt wrapper (standalone then) and inside Chrome (Chrome client + HTML server developed with Poco C++ framework).

HTML server (Poco C++) + Chrome (HTML/JavaScript)

Qt + WebKit + HTML/JavaScript

From the point of view of the user, one main difference: he uses a browser in the second case, with all that this means (additional options, menus, need to provide a connection endpoint etc), while in the first one he even cannot not imagine the technology behind the app. More over, as we use Bonjour/Zeroconf, the first situation does not need any connection info: Qt part of the app implements a Bonjour services client that detects automatically the O3S master to connect to. I would say that from the user experience point of view, specially when talking about people in industry, hybrid apps are much more convenient.

What about performances ? Well, not clear enough. Our tests show that hybrid app is a bit faster, but, because of some unidentified bugs, can switch to some unstable situations where the 100ms refresh cycle (used for both) is not respected anymore. We will not conclude on this before using the future Qt5 when official (currently alpha version), but for the moment Chrome experience looks smoother in some extreme cases.

We could say a lot on this, but a deeper analysis would mean that we have a conclusion, which is not the case. We hope that the intensive use of both, in the next months, will bring to us some evidencies.

Native extensions for Adobe© Air© are a powerful way to transform AIR apps into fully featured desktop applications. Of course, everybody is currently focused on mobile applications and so we are, but why not seeing that Air becomes a very consistent alternative to Qt, GTK+ or other graphical C++ frameworks ? In fact, taking a look to the Qt strategy, everybody tries to provide in some way what Adobe® Apache Flex® started to provide years ago: simplicity, portability and declarative programming. Well, Flex graphics will never be as fast as Qt ones, but who cares ? 90% of the desktop applications do not need heavy permanent computation for graphics, but eventually for other purposes (ok, I have no idea about the precise amount of apps in this case, maybe not 90% but even if 50% is good enough for the demonstration). Then why spending hundred days for developing something than can be done in few weeks just because somebody told you that C++ is powerful ? I love C++, but not for this. And by the time that Qt will be mature enough, or JavaFX or others, I will use them in the same intensive way that I use Flex. For the moment Flex answers almost all my needs, but indeed, something misses there: the capability to access all the OS features. Now, the solution is there: Native Extensions.

One of my huge problems till the version 3 of Air, was to be able to use Bonjour services inside a Flex app. Indeed, Flex is usually used for client apps, while Bonjour is an elegant way to discover servers’ services. It took some time (just find the time to do it), but now it’s finished. Happy to announce the availability of the as3Bonjour AIR native extension that I developed.

It is based on Poco C++ and for the moment it provides only browsing capabilities, but soon, registering will be available.

Extension is available for Windows and Mac OS X, but I am working on making it available for iOS as well.

More info here, so, enjoy !

Nous voici donc arrivés en 2012, depuis peu, et une nouvelle version majeur de O3S a pointé le bout de son né. Beaucoup d’améliorations invisibles (performances, robustesse), mais aussi l’ajout de quelques fonctions clé comme la gestion du temps de simulation (déjà existante depuis 1.4, mais cette fois-ci intégrée directement dans les IHMs). Pour ce qui est des IHMs, justement, un look&feel amélioré dont voici un aperçu:

o3sPlatformManager

o3sUIDesigner

o3sScope

Bien entendu, il est intéressant de savoir que Flex permet un développement très rapide de IHMs dédiées (en plus de pouvoir créer des synoptiques spécifiques grâce à o3sUIDesigner). Un exemple ci-dessous d’une IHM permettant de piloter quelques modèles simples dans le domaine ferroviaire (principalement des pondeuses dans ce cas):

Exemple de IHM spécifique développée en Adobe Flex

Un petit rappel des principales fonctionnalités disponibles aujourd’hui dans O3S, extrait de notre plaquette:

…In a few words…

Simulates the whole environment of a given system for testing, debugging and IV&V purposes.

Easy control tools, easy programming with widespread languages.

Gives access to the whole system IOs through its IO native or extended capabilities.

Architecture

  • distributed real time based on computation nodes (limited only by the data flow and so by the network bandwidth)
  • based on data services
  • 10ms data synchronization (Linux platforms)
  • up to 10ms execution cycle for simulations (Linux; up to 5ms on QNX)
  • highly modular based on OSGi standard (bundles plugins)
  • about 100 bundles available for core functions

IOs

  • remote or embedded PCI digital and analog IOs (Addi-Data PCI, Advantech Adam series, LabJack, can be adapted to any existing IO boards)
  • CAN, CANopen, Modbus, Serial, GPIB (any bus can be implemented through bundles /plugin mechanism)
  • Ethernet (TCP, UDP, Modbus TCP, specific protocols like EuroRadio+)
  • FPGA specific boards (e.g.: railways odometer simulation board)

Simulation capabilities

  • multi-domain (software, hardware, mechanical, electrical…)
  • multi-language (Python, C/C++, Obj-C, Ada, …)
  • multi-platform (Linux, Linux RT/Xenomaï, MacOS X, QNX, Windows)
  • time control functions, synchronous and asynchronous runtime scheduling
  • SCXML integration
  • Matlab/Simulink integration
  • Scilab integration
  • Modellica Integration
  • Model In the Loop, Software In the Loop, Hardware In the Loop
  • remote control through Python scripting
  • Adobe® AIR® GUIs remote control for administration, synoptics building, data visualization
  • easy to plugin dedicated HMIs thanks to the node emulation mode for GUIs (Qt, GTK+, AIR,…)

Arrivé à un niveau de maturité très honorable, notre solution a d’abord besoin de plus de souplesse encore (eh oui, c’est possible). Suite à la stratégie nouvellement adoptée par Adobe sur le sujet Flex, ainsi qu’à l’abandon de la version Linux, il apparaît utile de développer une alternative aux IHMs existantes. Prochaines étapes importantes, donc, des IHMs Qt…

Leave A Comment, Written on février 19th, 2012 , O3S Tags: , ,

O3S (Open System Simulation Solution), fait son petit bonhomme de chemin.

Déjà en version 1.2.2, O3S est actuellement en utilisation pour la réalisation de multiples plates-formes de test chez GE Transportation (plusieurs sites dans le monde).

Dans notre viseurs aujourd’hui, de nouveaux clients dans le domaine de l’aéronautique et de l’automobile.

Fait anecdotique, mais qui pourrait prendre du poids à l’avenir: l’interface o3sUIDesigner permettant de réaliser des IHMs de contrôle pour O3S s’exécutent aujourd’hui aussi sur les tablettes Android, ainsi que sur la PlayBook de BlackBerry. Une version iPad est prévue en juillet 2011.

Leave A Comment, Written on mai 19th, 2011 , Simulation Tags: , , ,

A tous, mais surtout à tous ceux qui n’oublient pas qu’ils ne sont pas seuls, à tous ceux qui aiment la petite lumière de bonheur dans les yeux des autres, à tous ceux qui font usage de leur raison comme d’un don magnifique, à tous ceux qui aiment bâtir une très bonne et heureuse année 2011, la santé et de très bonnes surprises !

Leave A Comment, Written on janvier 4th, 2011 , Divers

En cette fin d’année 2010, beaucoup de choses seraient à dire sur ce que nous avons accompli, mais je voudrais plus me focaliser sur l’avenir et sur notre volonté de faire mieux. Noël, puis les bonnes résolutions de l’année suivante sont toujours un moment propice pour se mettre à rêver de ce que l’on voudrait comme vie, des choses qu’on voudrait changer à coup de volonté qui jusque là nous aurait manqué.

2010 fut l’année du réveil. Si les premières années d’une entreprise sont souvent synonymes de survie, avec un peu de réussite on commence rapidement à penser à l’avenir plutôt que de se focaliser désespérément sur le présent. Malgré la crise, OpenTekhnia ne s’en sort pas trop mal, mais surtout nous, je, avons pris conscience de la nécessité de revenir à des valeurs plus importantes que l’argent, la richesse, la croissance.

2010 fut l’année où nous découvrîmes plus que jamais ce que nous savions au fond déjà: nous vivons en permanence sur le fil du rasoir, dans une société où, malgré la civilisation et le progrès, les institutions et les lois, les plus agressifs, les moins regardants, les plus insouciants du sort commun réussissent bien plus que la morale, le bon sens ou le sentiment de justice le voudraient.

Un ex-ministre nous dit qu’il a aidé à l’obtention de la légion d’honneur pour un soi-disant inconnu, dénoué en tout cas de tout mérite, uniquement parce que c’était là la pratique courante des gens du pouvoir. Il n’y voit aucune honte, et seule une partie de la société trouve cela misérable. En même temps on apprend qu’une entreprise du CAC 40 sur quatre ne paye pas ses impôts en jouant sur la loi, que la moyenne de l’impôt sur les sociétés de ces géants est de 8% (22% pour les PME) et ce fait ne constitue même pas un scandale. On apprend que les grandes sociétés comme Bouygues fondent leur richesse en partie sur la corruption de dirigeants dont les mains sont pleines de sang dans leurs pays respectifs, qu’un ministre de l’intérieur français peut être condamné deux fois devant la justice tout en restant ministre, qu’il peut défendre publiquement des policiers rendus coupables des pires délits, que les banquiers et deux ministres ont besoin de traiter Cantona de fou pour vaincre leur peur de perdre ce qu’ils ont sur un coup de tête du peuple, que le pouvoir en France n’hésite plus à user publiquement de ses prérogatives pour installer ses vassaux aux postes clé du pays… On apprend en somme qu’il ne faut pas aller trop loin pour trouver de la corruption, fusse-t-elle plus subtile, et que la seule tendance qui se dégage c’est que de plus en plus l’agressivité paye.

On a le choix. Rester les bras croisés, voire s’adapter au système en devenant ce qu’on abhorre, ou tenter de faire quelque chose. Refuser la médiocrité et la défense immédiate de son confort est déjà un bon début. Tenter de soutenir les courants de la société progressistes et idéalistes, c’est encore mieux. Certes, entre illuminés et naïfs, difficile de trouver son bonheur. Mais pourquoi ne pas rêver ?

OpenTekhnia se veut, sans hypocrisie et de manière réaliste, une entreprise militante. L’argent, la consommation sont les valeurs absolues d’aujourd’hui. Lutter, c’est prendre le système à revers. Nous n’allons pas nous isoler, au contraire.  Mais chaque sou gagné servira – qu’en partie, reconnaissons-le – à faire avancer des idées.

Le projet गृह gṛha fait partie des ces actions. Le retour aux sources, pas au sens conservateur, mais au sens de la volonté de faire progresser notre communauté (humaine), sera notre guide en 2011. En sanskrit गृह gṛha veut dire, entre autres, maison. Le sanskrit, cette langue un peu artificielle mais aussi apparentée à l’origine des langues indo-européennes, nous sert de logoscript. Le projet a pour but de faire de OpenTekhnia une entreprise de conception totalement nouvelle, avec un fonctionnement innovant, adapté au monde dans lequel on vit, aux contraintes d’une écologie modérée et clairvoyante, mais aussi aux désirs des employés d’aujourd’hui. Ce projet commencera par une maison, car depuis que l’Homme a cessé d’être nomade (du moins pour une majorité d’entre nous), la maison est notre premier repère, aussi bien que notre bulle. En 2011, OpenTekhnia lancera donc un concours ouvert en premier lieu aux étudiants en architecture et qui a pour thème la réalisation de la maison-bureau idéale.

L’informatique permet aujourd’hui, en effet, d’imaginer un fonctionnement basé sur le télétravail, voir la télé-présence, ce qui permet à chacun de construire une vie autour de son travail, mais aussi autour de fondamentaux comme la vie privée, le temps libre nécessaire au repos et à l’acquisition de la culture et du savoir qui font de nous des hommes et des femmes citoyens.

Le temps est le plus grand luxe. OpenTekhnia voudrait offrir ce temps à ses collaborateurs, qu’il s’agisse de sous-traitants ou d’employés. La réflexion portera donc sur comment garder une vie sociale (souvent liée au travail) tout en libérant le maximum de temps pour profiter de toutes les choses que la vie peut nous offrir. Il ne s’agira bien sûr pas de créer des Homo Informaticus collés à leurs ordinateurs, mais au contraire d’offrir la liberté à chacun de vivre sa vie, cette liberté que l’Homo Sapiens Sapiens à mis tellement de sueur à acquérir et qui régresse de par l’organisation nouvelle d’une société axée uniquement sur une performance illusoire et décorrélée totalement de la réalité du progrès.

L’année 2010 fut pour nous l’année de tous les rêves. C’est en tout cas ce qui était écrit sur notre carte de voeux. L’année 2011 sera l’année du retour aux sources, un rêve idéaliste que nous devrons d’abord expliquer, avant d’en faire participer d’autres à celui-ci. Le retour aux sources signifie aussi ne pas oublier que le bien de chaque individu, notre égoïsme, passe par le bien de tous.

Leave A Comment, Written on décembre 23rd, 2010 , Divers Tags:

La nouvelle version de o3sDynamicUI se veut d’une simplicité absolue: sur un tableau noir vide, votre espace de travail, vous pouvez rajouter une panoplie d’objets graphiques de contrôle (boutons radio, boutons radio discrets, boutons simples) ou de visualisations (jauges de toutes sortes, leds, graphiques XY ou YT) que vous reliez ensuite à des paramètres de la plate-forme de simulation O3S. Vous avez ainsi la possibilité de créer votre synoptique spécifiques, allant d’une replique d’une console de conducteur de train à un oscilloscope multi-écrans, en passant par une vue bas-niveau de visualisation et de contrôle des entrées-sorties physiques.

Basée sur la librairie tekhniaG que nous avons réalisé sous license LGPL, cette application tire profit des capacités graphiques des technologies Adobe®, en particulier dans un environnement desktop s’exécutant sur Adobe® Air®. TekhniaG est disponible sur Google Code.

Puisque le blog a été lancé après cette nouvelle, un petit rappel s’impose: à partir de 2009, OpenTekhnia a été reconnue par le Ministère de la Recherche comme Jeune Entreprise Innovante. Ce statut certifie que la société investit structurellement et constamment dans la recherche dans le cadre de ces projets en cours.

Le projet R&D principal de OpenTekhnia est, bien entendu, O3S, qui, bien que déjà un produit disponible sur le marché, continue de viser de nouveaux horizons non encore explorés comme le traitement de spécifications en langage naturel ou l’interopérabilité des simulateurs.

Un nouveau projet a été lancé cette année: le projet Cequasystus (CErtification et QUAlification des SYSTèmes en USine). Le nom étant relativement parlant, une précision importante est que ce projet n’est qu’un prolongement naturel de O3S et se base en très grande partie sur cet outil.

Nous sommes également en train de réaliser un projet R&D pour un de nos clients portant sur l’utilisation de nouvelles technologies dans un contexte fortement contraint d’un point de vue sûreté de fonctionnement (détails non disponibles publiquement).

Leave A Comment, Written on octobre 13th, 2010 , Divers, Simulation Tags: , ,

OpenTekhnia, le blog is proudly powered by WordPress and the Theme Adventure by Eric Schwarz
Entries (RSS) and Comments (RSS).

OpenTekhnia, le blog

Ceci nous intéresse. Et vous ?