Robótica e automação um pouco mais sobre o assunto

Oi, pessoal voltando a nossa série de posts sobre o tema robótica e automação hoje vou falar um pouco dos conceitos que envolvem os processos e robôs utilizados nos processos de automação que vimos no post passado.

Saiba um pouco mais sobre os conceitos que envolvem a Robótica e automação

Dentre os conceitos básicos desta área hoje vou falar de 5 deles: envelope de trabalho, resolução, graus de liberdade, acurácia e repetibilidade. Vamos lá?

Envelope de Trabalho – É Uma região no espaço tri-dimensional que a mão ou a ferramenta de trabalho que o manipulador possui consegue alcançar. Depende do projeto mecânico do robô. Termo usado hoje para a área de trabalho de um operário humano, veja na imagem abaixo alguns exemplos de envelopes de trabalho.

Envelope de trabalho - Robótica e automação
Envelope de trabalho – Robótica e automação

Resolução – É a menor mudança de posição possível que o robô pode realizar ou que seu sistema de controle pode perceber. Característica determinada pelo projeto do robô e de seu controle

Existem dois tipos de resolução:

  • Resolução do programa: É a menor mudança de posição permitida pelo programa de controle do robô. Conhecida como Basic Resolution Unit (BRU). Para um robô ABB IRB2000 é de 0,125 mm linear.
  • Resolução do controle: É a menor mudança de posição que o dispositivo sensor consegue captar. Para um encoder de 1000 pontos por rotação é de 0,36 graus.

O melhor desempenho é obtido quando a resolução de programa é igual a resolução de controle. Neste caso pode-se usar apenas o termo resolução do sistema.

Graus de Liberdade (DOF) – Os graus de liberdade determinam flexibilidade de movimentação e/ou observação de algo. Objetos possuem 6 diferentes direções, nas quais podem se mover no espaço:

  • Translações: • para frente ou para trás (eixo X) Para cima ou para baixo (eixo Y) Para esquerda ou direita (eixo Z)
  • Rotações • rotação ao redor de X  ao redor de Y ao redor de Z

Cada eixo (ou articulação) existente no manipulador cria um grau de liberdade. Associados aos movimentos das juntas do manipulador. Manipuladores industriais tem de 4 a 6 DOF, tipicamente.

Acurácia – A habilidade do robô posicionar o atuador em uma posição do espaço. Depende do tipo do robô e da precisão no controle de cada movimento de juntas. Pode ser descrita como metade da resolução de controle, considerando o pior caso na situação de que o alvo se encontra entre dois pontos de controle. Pode ser definida estatisticamente.

Repetibilidade – A habilidade do robô retornar consistentemente a uma posição previamente alcançada. É uma medida estatística, associada a acurácia. Se a posição desejada não é atingida, mas sempre o mesmo erro acontece, então a acurácia é ruim mas a repetibilidade é boa. Descreve o erro do robô, mas não em posições absolutas.

É muito usada pelos fabricantes:
_ A acurácia depende da carga: Cargas maiores causam deflexões maiores, que degradam a acurácia.
– A repetibilidade não depende da carga.

É isso pessoal, estamos ainda tateando os conceitos básicos dessa área tão interessante que é a robótica e a automação industrial. Na quarta que vem voltaremos ao assunto, por hora veja mais alguns vídeos dos robôs em ação no processo de automação industrial.

Fábrica da KIA

Fábrica da BMW

Como funciona a modelagem de dados do Opencart

Saiba um pouco mais sobre como funciona a modelagem de dados do Opencart

Base de Dados Opencart

Oi pessoal, tudo bom? Terça-feira dia de colocar a mão na massa e falar de desenvolvimento na prática.

Como prometi na semana passada hoje vou continuar a falar pra vocês sobre a estrutura da plataforma de e-commerce Opencart, mais especificamente sobre sua modelagem de dados.

Ah, antes de mais nada vale lembrar que estamos falando de uma base de dados construída em cima de um MySql.

Muitas tabelas e um pouco de confusão…

Em sua instalação padrão, na versão 1.5.1, o Opencart conta de saída com absurdas 89 tabelas, o que na minha opinião é um exagero, acaba sendo meio comum quando comparado com outras plataformas do mesmo gênero como o Magento.

Analisando mais a fundo a modelagem dos dados podemos identificar alguns grupos de tabelas, principalmente pelo prefixo utilizado no nome das mesmas, as principais são.

  • attribute_…

Resposável pelos atributos de um produtos, coisas que não tem relação com a grade ou estoque e sim características do mesmo.

  • banner_…

Auto explicativo, porém agrupa banners utilizados em diversos módulos que veremos mais a frente

  • category_…

Controla a árvore de categorias e posterior navegação da loja

  • customer_…

Agrupa “quase” todos os dados do cliente da loja, já que o endereço fica em uma tabela avulsa chamada Address

  • information_…

Resposável pelas páginas de conteúdo do site, seria algo como posts em um CMS como o WordPress

  • option_…

Agrupa informações que afetam o estoque da loja, ou seja Tamanho, Voltagem etc ficam aqui

  • product_…

Auto explicativo, um grupo gigante de 16 tabelas é responsável por gerir os produtos no sistema

  • return_…

Grupo resposável pelo gerenciamento de seolicitações de troca

Muita coisa né?

Ainda existem outros grupos menores e menos relevantes, mas creio que vendo essa quantidade de grupos e tabelas você já consiga ter uma idéia da complexidade, nem sempre necessária, dessa base de dados.

Toda essa quantidade de tabelas é trabalhada quase que de maneira artesanal pelas models do sistema que como já disse na semana passada são duplicadas entre a loja e o sistema administrativo, pois p sistema nnao usa nenhum framework para encapsulamento das consultas ou dos dados.

Bom, imagino que ja é bastante informação por hoje, na terça que vem vou continuar a falar pra vocês de Opencart abordando dessa vez o funcionamento do VQmod, um conceito que é a salvação do desenvolvedor frente a pouca otimização do sistema.

Abraço e até semana que vem!

 

How to resize images in batch with OsX Automator?

How to resize images in lot using Automator in OS X step-by-step.

Learn how to save much time resize images in batch using Automator in Mac OS

Hello everyone, first I want to wish a good week to all readers, and since today is Monday, is the day to bring productivity tips here on the blog as we brought last week, if you have not read and do not waste time and read now

Now, go to the job!

Today i will teach you how to make a bacth image treatments directly in Apple OSx come on?

Step 1:  We will use Automator, one of the oldest software existing on the Mac OS, to find it just type automator at finder.

Como abrir o Automator
How to open Automator

Step 2: 

Passo 2: We will create a “Workflow”, these are small programs created via automator to create one, just click:  file> new and select workflow

reduzir imagens em lote
Reduce ima

Step 3:  Now you must choose on the side menu the steps to your workflow should do. Choosing the type of action and defining the parameters of execution  (Always double-click the option to move to the flow)

  • Files & Folders> Get selected Finder Items (Responsible for opening images)
  • Photos> Scale Images (Responsible for resizing, this action you must set the size you want for the image)
  • Files & Folders> Copy Finder Items (Responsible for saving images)
After that the process is very simple, just open the finder of your system, select the images to be resized and return to Automator. Just click the Run button there at the top.
Run Automator
Run Automator
Done! Resized images saved! If you have some difficult to do thar you can download the workflow here
That’s it!  Until next week with more tips to increase your productivity!

 

Como reduzir imagens em lote no Mac OS usando Automator

Como reduzir imagens em lote no Mac OS usando Automator, passo a passo.

Saiba como economizar muito tempo ao reduzir imagens em lote utilizando o Automator do Mac OS

Bom dia pessoal, primeiramente quero deseja uma boa semana a todos os leitores, e como hoje é segunda feira, é dia de trazer dicas de produtividade aqui no blog como as que trouxe na semana passada, se você não leu não perca tempo e leia aqui

Mas vamos ao assunto do dia, como reduzir imagens em lote, em 2008 quando eu ainda usava Windows e Photoshop eu fiz um post aqui explicando como reduzir as imagens em lote utilizando o software da Adobe , já em 2009 eu trouxe uma dica para reduzir imagens diretamente ela WEB através do resizeimage.org

E hoje vou ensinar como fazer esse tratamento de imagens em lote diretamente no sistema da Apple, vamos lá?

Passo 1: Vamos utilizar o Automator, um dos softwares mais antigos existentes no MAC OS, para encontra-lo basta digitar Automator no finder.

Como abrir o Automator
Como abrir o Automator

Passo 2: Iremos criar um “Workflow” ou fluxo de trabalho, esses são pequenos programas criados via automator, para criar clique em file > new e escolha workflow

reduzir imagens em lote
reduzir imagens em lote

Passo 3: Agora você deve escolher no menu lateral os passos que seu fluxo de trabalho deverá seguir, selecionando o tipo de ação e definindo os parâmetros de execução o que neste caso será: (Sempre dê dois cliques na opção para mover ao fluxo)

  • Files & Folders > Get selected Finder Items (Responsável por abrir as imagens)
  • Photos > Scale Images (Responsável por redimensionar, nessa ação você deve definir o tamanho que deseja para a imagem)
  • Files & Folders > Copy Finder Items (Responsável por salvar as imagens)
Feito isto o processo é muito simples, basta abri o finder do seu sistema, selecionar as imagens que serão reduzidas e voltar ao Automator e clicar no botão Run que existe no canto superior.
Run Automator
Run Automator
Pronto! Imagens redimensionadas salvas! Se você teve alguma dificuldade na criação eu estou deixando abaixo um link para download  do fluxo pronto aqui.
É isso pessoal, até a semana que vem com mais dicas para aumentar sua produtividade!

 

What is Parallax Design?

Hello Guys! Its friday, User Interface day on this blog, and today i will write about a really nice topic! Its Parallax Design.

Parallax design, what is? Where did? How it works?

The concept of design or Parallax Parallax scrolling is definitely another one of those trends in user interface design that emerge as something new and innovative but which is actually based on very old concepts adapted to current technology. In this case the concept dates back to the 40s when it began to be used in the production of animations like the example below:

Optical illusion

In case of Parallax on animation, everything is just a technique of optical illusion where  layers of animation moves in different speeds which gives us an impression of depth in the animation.

This technique is widely deployed and used in the gaming market since the early 80s and in recently has come to internet interface design for which shows very interesting to well-defined objectives.

In the below video you can see some examples of  the Parallax Scrolling technique  applyed  to NES games.

Nice Parallax Design examples

It is easy to find on the internet dozens of good examples of using the Parallax effect on the internet projects, but I will list below some that are worth exploring:

And how to implement?

Keep calm, and wait for the next week post, i will explain her how to make an incredible parallax implemntation

See you!

Parallax vídeo

Parallax on the web

O que é Parallax design? Exemplos…

Bom dia pessoal, sexta feira, dia de falar de Usabilidade e Interface por aqui, mas antes de começarmos que tal você dar uma lida nos últimos posts sobre Media Queries  e sobre Layout responsivo? Bom vamos ao assunto do dia…

Parallax design, o que é? De onde surgiu? Como funciona?

O conceito de Parallax design ou Parallax scrolling é sem dúvida mais uma daquelas tendências do design de interface que surgem como algo novo e inovador mas que na verdade é baseado em conceitos muito antigos adaptados a tecnologia atual. Neste caso o conceito data dos anos 40 quando começou a ser utilizado na produção de animações como o exemplo abaixo:

Ilusão de ótica

No caso do Parallax na animação tudo não passa de uma técnica de ilusão de ótica onde os layers/camadas da animação se dão em velocidades diferentes o que nos dá uma impressão de profundidade na animação.

Esta técnica é amplamente difundida e utilizada no mercado de games desde o início dos anos 80 e nos últimos anos chegou ao design  de interfaces para internet onde apresenta resultados muito interessantes para objetivos bem definidos.

No vídeo abaixo você pode ver alguns exemplos da aplicação da técnica de Parallax Scrolling em games do NES

Bons exemplos do uso de Parallax Design na internet

É fácil encontrar na internet dezenas de bons exemplos da utilização do efeito Parallax na internet, mas vou listar abaixo alguns que valem a pena conhecer:

E como implementar o Parallax Design na WEB?

Calma “pequeno gafanhoto”, isso eu vou explicar nas próximas semanas, quando vou trazer aqui um tutorial sobre como implementar Parallax desgin na prática.

Por hoje ficamos por aqui, veja os vídeos abaixo sobre o Parallax Design e até a semana que vem.

Parallax em vídeo

Parallax na web

O MYO vai matar o Kinect, é só questão de tempo!

Saiba porque você vai usar um MYO em breve, e sim ele vai acabar com o Kinect

Oi pessoal, quinta feira, dia de falar um pouco sobre curiosidades do mundo da tecnologia, na semana passada falei pra vocês um pouco sobre o Glonass, sistema de localização russo, se você não leu, leia que vale a pena.

Mas o assunto de hoje é o MYO, um projeto da empresa americana, de Waterloo, Thalmic Labs, esse por sinal é o primeiro produto da empresa, e na minha opinião deve revolucionar muitas soluções de tecnologia que conhecemos atualmente e acabar com o conceito criado pelo Kinect.

Mas afinal o que é o MYO?

MYO
MYO

MYO, é nome do projeto de uma pulseira, ok, esta mais para um bracelete, capaz de identificar seus movimentos através da variação muscular e desta forma permitir que você controle dispositivos apenas através de gestos. Bem no estilo Minority Report.

Vídeo do MYO

Mas o Kinect já não faz isso?

Não, o sistema da Microsoft utilizado na contrução do Kinect utiliza câmera e infravermelho, o que te obriga a ficar em frente ao aparelho para que a coisa funcione, ja no MYO isso não é necessário pois é o bracelete que identifica seus movimentos e pode por exemplo, apagar uma lâmpada quando você fechar a mão.

As possibilidade do MYO são quase infinitas…

Outro ponto muito interessante é que a Thalmic vai disponibilizar jundo ao produto uma API que permite que qualquer desenvolvedor possa utilizar o aparelho apenas como um dispositivo de entrada para os seus próprios aplicativos, o que aumenta e muito o alcance da solução.

O MYO ainda está em fase de testes porém já pode ser comprado em pré-venda no site do projeto, as primeiras unidades serão despachadas no final de 2013 e o preço é de apenas US$ 149 o que diga-se de passagem não é muito se compararmos aos US$ 1500 do Glass.

Veja abaixo alguns vídeos do MYO

É isso, eu não vejo a hora de poder criar utilizando o MYO e você o que acha da solução? Comente abaixo e até a próxima!

O uso da robótica na automação industrial

Saiba um pouco mais sobre o uso da Robótica na automação industrial

Bom pessoal continuando como prometido a série de posts (1) (2) sobre o tema Robótica quero falar pra vocês hoje sobre a utilização destas maquinas na automação industrial.

Exemplo de automação industrial
Exemplo de automação industrial

O que é a Automação Industrial?

A área de conhecimento que trata da aplicação de equipamentos e técnicas específicas em uma determinada máquina ou processo industrial com o objetivo de aumentar sua eficiência e/ou reduzir a interação humana no mesmo, automatizando as tarefas repetitivas.

O termo automação, do latim, Automatus, significa mover-se por si, e é utilizado nos processos industriais com o objetivo de atingir os mesmos objetivos com menor custo, mais segurança e ainda reduzir o esforço ou interferência humana sobre o processo ou a máquina.

Entre os equipamentos utilizados na área temos: computadores, controladores lógicos programáveis (CLP, CNC, SDCDs); robôs, manipuladores e atuadores.  Estes equipamentos em alguns casos, substituem tarefas humanas ou realizam outras que o ser humano não consegue realizar.

Exemplo de automação

Tipos de automação

A automação pode ser classificada em 3 tipos, como você pode ver abaixo:

Automação Fixa – É utilizada quando o volume de produção é muito alto, pois utiliza equipamentos projetados para produção de produtos com alta velocidade e baixo ou nenhum nível de customização reduzindo desta maneira o custo individual por produto produzido.

Este tipo de automação possui uma grande parcela de risco envolvida, pois se a demanda pelo produto não for a esperada corre-se o risco de toda uma linha de produção se torna inútil ou obsoleta uma vez que foi projetada sob medida para tal produto.

Automação Programável– É utilizada quando o volume de produção é relativamente pequeno, pois possui maior flexibilidade e pode se adaptar de certa forma a produção de diversos produtos diferentes e tem sua programação orientada a produção de lotes de um produto.

Automação Flexível – É usada quando o volume de produção é mediano. Utiliza uma série de estações de trabalho conectadas por equipamentos de manipulação de materiais. Um computador central roteia e controla a produção de diferentes produtos. Possibilita a produção de diferentes produtos ao mesmo tempo. Possui características da automação Fixa e Programável.

É isso pessoal, essa foi uma pequena introdução sobre o tema automação, caso vocês tenham curiosidade deem uma olhada nos vídeos do post que mostram alguns exemplos da automação e robótica em ação, até a próxima semana quando vou trazer para vocês mais detalhes sobre os robôs que compõem os processos de automação suas classificações e usos.

Fábrica da Coca Cola

Na quarta feira que vem vou continuar com esta série de posts sobre robótica e o seu uso em nosso dia a dia.

Gostou? Não? Comente abaixo.

How the Opencart structure really works?

What about know more about the Opencart structure?

Hello everyone! Today i will talk a little about the Opencart structure. If you don’t know, Opencart is a simple and powerful e-commerce platform developed using php/mysql and you can download the software for free at this Link.

The Opencart structure

The system was developed according to the classical MVC paradigm, with a well separation between Models, Views and Controls. Other unity is the language models, responsible to make multi-lingual stores at the same administration and templates.

MVC Classical Paradigm
MVC Classical Paradigm

Opencart Urls

For understand Opencart or another system, is realy important understand how these urls was built, see this example:

store.com/index.php?route=product/category&path=59

This is the category page, where route indicates how controller was loaded, in this case the controller is category, located at product folder after that in path parameter is located the current category id.

Two different worlds

One of the worst things on the system is the full separation between the system front and system admin, both have their own MVC structure and because that we need to repeat a lot of code on the both sides… This is a really waste of energy.

Understanding the Opencart Sintax
See the example of  controller about the above url

Opencart structure example

We have her the classical controller creation and the definition of the first method, called getCategory, after that the language module was loaded following the same approach (folder/file name) at the same style was loaded 2 models.

A bit more

Opencart structure example

In this case we have on first line the search of category details, by the getCategory call realized to the loaded model, as you can see the pattern was fixed  on the model call like:

$this->model_folder_file->methodName(Parameters)

After that whe have some calls to template methods used to attribute values who will be used on the template files, all data to be used on the template need to be added to $this->data array.

Thats it people, see you on the next week talking more about the Opencart, sorry about the English mistakes 🙂

Like? Dislike? Comment Above!

Until next time!

Como funciona a estrutura do Opencart?

Que tal conhecer um pouco mais sobre a estrutura do Opencart?

Bom dia pessoal, nessa minha volta ao blog ainda estou definindo a agenda de posts e quais serão os temas de cada dia, hoje neste post sobre como funciona a estrutura do Opencart vou inaugurar uma série que pretendo fazer todas as terças falando sobre o desenvolvimento na prática (mãos a obra), sempre com exemplos práticos de código para implementações do dia a dia.

Algum tempo atrás já disse aqui por que virei fã do Opencart, e quase 2 anos após o meu start com a ferramenta quero poder passar para você um pouco que aprendi sobre ela.

A estrutura do Opencart.

O sistema foi criado utilizando a abordagem clássica do MVC com a separação bem definida de entre Models, Views e Controls além de uma outra unidade que é o Language, que como o nome auto-explicativo diz é responsável pelo sistema de tradução do Opencart.

As urls do Opencart

Para entendermos o Opencart, como qualquer ferramenta parte fundamental se dá ao entender como suas urls são construídas, veja o exemplo abaixo:

loja.com.br/index.php?route=product/category&path=59

Trata-se da página de exibição de categorias, onde a rota nos indica qual controller esta sendo carregado, neste caso o controller category que é armazenado na pasta product e o parametro path contém o id da categoria que esta sendo visualizada.

Dois mundos distintos
Um dos conceitos mais controversos da plataforma é a separação quase que total entre o admin e o front do sistema ambos tem sua própria estrutura MVC nas pastas Admin e Catalog respectivamente qual praticamente nenhum aproveitamento de código entre as estruturas, ou seja temos um método para buscar detalhes do produto em cada uma das estruturas por exemplo, um belo desperdício de energia…

Entendendo o código do Opencart
Veja o exemplo abaixo retirado do controller existente no exemplo de url que foi colocado acima.

Exemplo de controller do Opencart
Exemplo de controller do Opencart

Temos aqui a criação do controler de categorias e a criação de seu primeiro método, após essa etapa são carregados os arquivos de linguagem seguindo a mesma abordagem de pasta/nome do arquivo assim comosão carregadas 3 models em sequência que sernao utilizadas durante o método.

Veja mais um exemplo de trecho mesmo arquivo:

Exemplo de código Opencart
Exemplo de código Opencart

Aqui temos na primeira linha a busca sobre os detalhes da categoria, através da chamada getCategory realizada para a model de foi carregada no trecho anterior, e você pode perceber o padrão de chamada das models que sempre será: $this->model_pasta_arquivo->nomeDoMetodo(parametros)

Na sequência temos as chamadas de métodos do template para atribuição de valores como titulo e descrição da página, nas próximas linhas temos a atribuição ao array data, este por sua vez é responsável por armazenar os dados que estarão disponíveis no template sob esses mesmos nomes.

É isso pessoal espero que essa pequena introdução possa facilitar o seu entendimento sobre a plataforma Opencart, na terça que vem seguindo a série sobre o desenvolvimento com a mão na massa vou continuar detalhando o funcionamento do Opencart desta vez falando um pouco sobre a estrutura de dados da ferramenta, quer aproveitar e ler um pouco sobre usabilidade? Começe por aqui

Lembrando que para estes posts estão utilizando a versão 1.5.1 da ferramenta.

Dúvidas? Sugestões? Fique a vontade para comentar, até a próxima.