collapse

* Posts Recentes

Rede de comboios elétricos totalmente autónomos 10 ton em Rust em realtime. por blabla
[18 de Setembro de 2022, 18:44]


NiMH por 18650 por almamater
[18 de Setembro de 2022, 17:21]


How We Get Down to 0.2nm CPUs and GPUs - TechTechPotato por blabla
[18 de Setembro de 2022, 15:38]


Nova secção de Raspberry Pi Bare Metal em C e em Rust e Systems Programming por blabla
[04 de Setembro de 2022, 08:55]


The code for AGI will be simple - John Carmack and Lex Fridman por blabla
[29 de Agosto de 2022, 07:36]


Wavelets: a mathematical microscope por blabla
[28 de Agosto de 2022, 20:50]


Bom livro - Dive Into Systems por blabla
[28 de Agosto de 2022, 12:19]


graus negativos inclinação por josecarlos
[28 de Agosto de 2022, 11:31]


Super obsolescência super programada? por SerraCabo
[06 de Agosto de 2022, 11:36]


Motor de aspirador por dropes
[02 de Agosto de 2022, 22:18]

Mensagens recentes

Páginas: 1 [2] 3 4 ... 10
11
Electrónica Geral / NiMH por 18650
« Última mensagem por almamater em 15 de Setembro de 2022, 11:51 »
Olá,

Tenho há alguns anos uma aparafusadora da Black&Decker e como cada vez estava mais fraquinha, abri-a e tem apenas 3 pilhas NiMH 1.2V 1800mAH e apenas existe um díodo na placa de carregamento, nada mais.

Eatava na ideia de substituir este pack NiMH por 1 célula 18650, o meu problema é que quero colocar uma placa BMS 1S juntamente com ela e apenas para controlar a descarga (para não baixar muito do limite mínimo da célula).






Ligando diretamente a célula ao motor sim, funciona, mas queria mesmo colocar a BMS para a deixar protegida.

Acontece que com a BMS o motor não anda, anda muito muito pouco (quase nada mesmo) e a BMS desliga logo. Presumo que seja a diferença da corrente que o motor está a pedir VS aquilo que a célula pode dar..




Tenho umas 1000 células de portáteis, todas elas são ICR.. 

Aminha questão é, como não tenho nenhuma célula com maior capacidade de descarga (o máximo que tenho é de 7.6A, umas EVE ICR18650-26V), se comprar uma INR com 20A de descarga a BMS será que já aceita?

Ex.: 18650 3.6v 2.5a/20a Samsung

P.S.: O carregamento da célula seria de forma correta e adequada e não pelo sistema NiMH original (que seria desativado)
12
Então o Rust não pode ser "mal usado"?
13
Gostava de só dizer o seguinte....

Em relação ao linkarem com bibliotecas da NVidia para terem aceleração de CUDA e aceleração de Machine Learning. A NVidia não fornece as especificações do hardware deles, só fornece as libs, a não ser que sejas uma empresa da dimensão da Tesla e que consigas desenhar os teus próprios chips e conseguires controlar todo o processo e todo o design, todo o teu controlo de veículos autónomo por Machine Learning será sempre usando as libs de coisas como GPU's ou GPU embebidos como é o caso da linha industrial da NVidia, mas é e sempre será um chip muito parecido a um GPU só que more rugged.

Por outro lado a frase de que a segurança extra do Rust vai toda à vida porque linka com uma biblioteca que não controla não é uma afirmação correta, pois na tua parte do código, na parte que tu fazes em Rust é que o código é mais seguro e nessa parte é que estás a ter a vantagem de diminuir classes de erros.

Estas coisas normalmente correm em cima de Linux e essa parte do sistema também não é feita em Rust e logo sofre do mesmo mal :-) Mas volto a dizer pelo menos o código que é feito em Rust fora dos blocos unsafe é mais seguro pois diminui toda uma classe de erros/bugs nessa parte do código.

Em relação às máquinas de estados implementadas em Rust com o auxilio do sistema de tipos, é porque se for bem feito, o sistema de tipos não permite sequer que seja compilado transições entre estados inválidos. O sistema de tipos protege-te contra isso.

E tem em conta que Macros em Rust não tem nada a ver com Macros em C ou C++, Macros em Rust validam que o que se está a escrever é código válido, elas são parte integrante da linguagem, tal como todas as outras coisas na linguagem Rust, não é como em C ou C++ que foram uma adição que só substituem texto sem validações.

Obrigado,

Cumprimentos,
João
14
Bom dia jm_araujo,

claro que podem existir muitas falhas neste sistema e não o conheço o suficiente, fora esta pequena apresentação para saber quais são e quais são as suas reais implicações. Mas de uma coisa é certa, desenvolver em uma linguagem como o Rust gera menos falhas, menos defeitos no código por número de linhas, pois errar é simplesmente humano. Isto em relação ao código desenvolvido em C ou em C++. E digo-te isto, trabalhando eu em C e C++. Por exemplo até a industria de aeroespacial já está a começar a usar Rust, ainda não no software de onboard que tem de ser auditado, pois para isso é necessário que haja uma especificação do Rust e o Rust de mês e meio em mês e meio ou de 3 em 3 meses, não me recordo, sai uma
nova subversão. Contudo a FerroSystems em conjunto com uma entidade que certifica o ADA, já está a tratar de fazer uma especificação (já saiu o draft) e já está a começar a trabalhar na auditação de uma versão do compilador de Rust para certificar uma versão de Rust e desta forma para poder ser usado em sistemas críticos que exijam auditação e certificação do código e de toda a tool chain, tal como acontece com ADA, C e C++.
No entanto Rust já está a ser muito usado mesmo na industria de aeroespacial no desenvolvimento de Tools à volta dos cores designs, pois muitas vezes essas tools de suporte não estaram no onboard, não são críticas e como e como tal não tem de ser certificadas.

Mas volto a dizer, é humanamente mais realista fazer código Rust com menos erros/falhas (ou de ter menor quantidade de  algumas classes de erros, devido ao sistema de tipos do Rust) do que código idêntico que implementa a mesma funcionalidade em C ou C++.

Obrigado,

Cumprimentos,
João
15
Nem sei bem por onde começar: a resposta para máquina de estados para aplicação critica é "PLC industrial", não: vamos fazer a nossa própria implementação em macros numa linguagem "segura", e já agora vamos meter dependências para meia dúzia de bibliotecas que não controlamos. E a razão revela-se mais tarde: é mais rápido a simular... Máquinas com mais de 10T para pôr a funcionar em infraestrutura, que pode correr mal?
Gostei também do 22:55 : temos uma framework provada que não sabemos o suficiente para usar, vamos fazer a nossa própria implementação (com macros, claro), e deixamos uns comentários para se não funcionar  que tentem usas a framework. LINDO!

Parei pouco depois na parte que tem este sistema espetacular em rust, que melhor.que tudo, permite ligar a bibliotecas closed source em C sem impacto de performance. Falta a parte que deitam para o lixo toda a suposta segurança do rust por dependerem de código que não controlam (outra vez), mas desta vez binários!!

E gosto também de terem feito umas.maquinas de estados super seguras (LOL), e depois metem em cima controlo não determinístico de machine learning (treinado em rust? Não, em Python claro está! LOL). É giro ir lendo sobre segurança em geral ( que vou espreitando) e.as falhas que se vão descobrindo nos novos sistemas de ML, em edge cases ou por atores mal intencionados. Que pode correr mal, é só um comboio  :o

E nem vou elaborar sobre "descarbonizar" a linha férrea metendo baterias e sistema de propulsão EM CADA CARRUAGEM, em vez de eletrificar as linhas...


Metam mais tabaco que está a bater muito forte...
16
Boa noite a todos,

Este é um vídeo de uma palestra que vale mesmo a pena ver.

Nele mostram como uma empresa que pretende revolucionar o transporte de
contentores na linha férrea do EUA
, através de carruagens de 10
toneladas totalmente autónomas.
Cada uma, transporta um contentor de
tamanho estandardizado. Sem intervenção humana. Tudo é feito em Rust do controlo
em Real-time, da comunicação com os sistemas de controlo de comboios da
rede ferroviária e cargas já existente, ao processamento de imagem por
inteligência artificial, até ao simulador de todo o sistema.

Este claramente é o futuro de uma linguagem como o Rust, que nos traz
garantias de maior segurança no desenvolvimento, especialmente para sistemas críticos.

RustConf 2022 - All aboard the Rust train - electric freight. by Julie Wang



Muito obrigado,

Cumprimentos,
João
17
Bom dia a todos,

eu hoje adicionei uma nova secção de programação Bare Metal (ou seja sem sistema operativo Linux ou outro) para o Raspberry Pi. Adicionei bons links em C e outros em Rust.

Coloquei tudo no meu guia...

How to learn modern Rust
https://github.com/joaocarvalhoopen/How_to_learn_modern_Rust#raspberry-pi-bare-metal

Também adicionei alguns bons e novos recursos na secção de background em systems programming, no mesmo guia.
https://github.com/joaocarvalhoopen/How_to_learn_modern_Rust#background-in-systems-programming

Obrigado,

Cumprimentos e bom fim-de-semana,
João Carvalho
18
Software e Programação / The code for AGI will be simple - John Carmack and Lex Fridman
« Última mensagem por blabla em 29 de Agosto de 2022, 07:36 »
Bom dia a todos,

Algo para pensarmos.

AGI = Artificial General Intelligence = Human like Intelligence.

The code for AGI will be simple - John Carmack and Lex Fridman


Obrigado,

Cumprimentos,
João Carvalho
19
Software e Programação / Wavelets: a mathematical microscope
« Última mensagem por blabla em 28 de Agosto de 2022, 20:50 »
Boa tarde a todos,

Gostava de partilhar um vídeo excelente sobre Wavelet's e que mostra bem que é possível explicar muito bem um conceito complexo de forma muito simples e graficamente muito apelativa para todos.

Fiquei francamente à espera para ver mais vídeos do mesmo autor, pois este é uma verdadeira pérola, da mais elevada qualidade.

Wavelets: a mathematical microscope


Obrigado,

Cumprimentos,
João Carvalho
20
Software e Programação / Bom livro - Dive Into Systems
« Última mensagem por blabla em 28 de Agosto de 2022, 12:19 »
Boa tarde a todos,

Hoje gostaria de partilhar convosco o link de um livro de programação de sistemas muito bom que está gratuito no site dos autores.

É um livro que explica C do zero, como usar ferramentas como GDB e Valgrind, depois explica representações de dados low level, depois assembly x86_64, x86_32 e ARM.
Depois descreve de hierarquia de memoria, de processos, IO e mais umas coisas.
Depois descreve  de programação paralela e de novos sistemas altamente paralelos como MPI e GPU's.

Tudo em C e em Linux.

O meu conselho é que vejam o livro que vale mesmo a pena.

Dive Into Systems: A Gentle Introduction to Computer Systems
by Suzanne J. Matthews , Tia Newhall, et al.
https://diveintosystems.org/singlepage/

Vejam a versão Single Page.

Obrigado,

Cumprimentos,
João Carvalho
Páginas: 1 [2] 3 4 ... 10