https://www.elab.tecnico.ulisboa.pt/wwwelab/wiki/api.php?action=feedcontributions&user=Ist165696&feedformat=atomwwwelab - User contributions [en]2024-03-29T13:44:26ZUser contributionsMediaWiki 1.34.2https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:Photodiode_position_detail.jpg&diff=4152File:Photodiode position detail.jpg2021-08-01T17:49:57Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:Vertical_position_detail.jpg&diff=4151File:Vertical position detail.jpg2021-08-01T17:40:31Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:Origin_position_detail.jpeg&diff=4150File:Origin position detail.jpeg2021-08-01T17:14:31Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=P%C3%AAndulo_Mundial&diff=3344Pêndulo Mundial2020-02-05T17:33:30Z<p>Ist165696: /* Aparato experimental */</p>
<hr />
<div>=Descrição=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Decolagem da Soyuz na Guiana francesa @ 5º a norte do equador.|right|border|236px]]<br />
Os foguetões são enviados para o espaço a partir de latitudes equatoriais. Isto deve-se ao facto do peso aparente ser gradualmente reduzido desde os pólos até o equador. Efectivamente sentir-nos-emos mais leves no equador do que nos pólos!<br />
<br />
É esta ligeira diferença que permite poupar toneladas de combustível quando um foguetão é lançado em órbita a partir do equador. Por exemplo, o lançamento para uma orbita geoestacionária pela Soyuz a partir da Guiana Francesa (5ºN) permite colocar 3 toneladas(ton) em órbita ao invés das habituais 1,7 ton quando lançada de Baikonur no Cazaquistão (46ºN).<br />
<br />
O objetivo desta experiência consiste em determinar em vários pontos do globo a “constante da gravidade” através duma constelação de pêndulos colocados em várias latitudes e operados remotamente por qualquer pessoa através da internet. Espera-se que vários países da CPLP possam contribuir para esse esforço, aproximando estudantes, professores e cidadãos interessados no conhecimento físico do nosso planeta. Existem duas atividades a decorrer em paralelo: (i) o acesso através do e-lab a pêndulos em várias latitudes e (ii) a construção e [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 operação local em escolas] com o apoio da comunidade do [http://fqnosecundario.ning.com/ FQ em Rede].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro foram as primeiras cidades a contribuir para a rede em Janeiro de 2013, permitindo efectuar um ajuste dos dados experimentais à equação teórica que descreve a variação da gravidade com a latitude. <br />
<br />
Se quiser fazer parte da rede do Pêndulo Mundial, por favor envie-nos um [mailto:wwwelab@ist.utl.pt mail]. <br />
<br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Ligações'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/wp_epm.sdp<br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratório: Básico em [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Sala de controlo: Pêndulo Mundial<br />
*Nível: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
<br />
==Quem gosta desta iniciativa==<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Aparato experimental=<br />
Os pêndulos utilizados nas experiências são baseados no desenho do Dr. Jodl <ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Algumas alterações menores foram introduzidas ao nível do manuseamento da massa e na adaptação a materiais simples de encontrar de forma a permitir a replicação em escolas secundárias (ensino médio). Os dados seguintes foram utilizados na sua construção:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Exemplo de pêndulo utilizado para a determinação da aceleração da gravidade.]]<br />
<br />
[[File:Stringsuport.png|thumb|Suporte do cabo de ligação à massa que permite evitar alongamentos indesejados durante as oscilações. O cabo é fixo ou com uma agulha de seringa endovenosa ou com um parafuso M4 de latão perfurado interiormente a 1mm.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Caracteristícas físicas particulares<br />
|-<br />
| Local<br />
| Latitude<br />
| Longitude<br />
| Altitude (m)<br />
| Comprimento do fio (mm)<br />
| Diâmetro da esfera (mm)<br />
|-<br />
| CCV_Algarve/Faro<br />
| 37º00'N<br />
| 7º56'W<br />
| 10 m<br />
| 2677mm +/- 0.5mm @23ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| UESC/Ilhéus<br />
| 14º47'S<br />
| 39º10'W<br />
| 220m<br />
| 2705mm +/- 0.5mm @23ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| Lisbon<br />
| 38º41'N<br />
| 9º12'W<br />
| 20m<br />
| 2677mm +/- 0.5mm @19ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| Maputo<br />
| 25º56'S<br />
| 32º36'E<br />
| 80m<br />
| 2609.8mm +/- 0.5mm @27ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| São Tomé<br />
| 0º21'N<br />
| 6º43'E<br />
| 50m<br />
| 2756.5mm +/- 0.5mm @29ºC<br />
| 81.8 +/- 0.5 mm<br />
|-<br />
| Prague - CTU<br />
| 50º5.47N<br />
| 14º24.97E<br />
| 150m<br />
| 2850mm +/- 0.5mm @25ºC<br />
| 80.15 +/- 0.5 mm<br />
|-<br />
| Barcelona - UPC<br />
| 41º24.6N<br />
| 2º13.12E<br />
| 55<br />
| 2756.5mm +/- 0.5mm<br />
| 81.8mm<br />
|-<br />
| Rio de Janeiro - PUC<br />
| 22º54.13S<br />
| 43º12W<br />
| 50<br />
| 2826,0mm +/- 0.5mm<br />
| 81.6mm<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Características nominais<br />
|-<br />
| Comprimento do cabo (raio da esfera não incluído!) || 2705mm +/- 0.5mm<br />
|-<br />
| Massa da esfera || 2kg +/- 75g<br />
|-<br />
| Diâmetro da esfera || 81.2mm +/-1.5mm<br />
|-<br />
| Cabo || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Módulo de elasticidade do cabo || ~200GPa<br />
|-<br />
| Cronómetro || Microcontrolador com cristal de 7,3728MHz - 30ppm + laser + PIN foto-díodo<br />
|-<br />
| Wire CTE (25-500ºC) (Coeficiente expansão térmico do cabo) || ~14 x 10<sup>-6</sup> K<sup>-1</sup><br />
|}<br />
<br />
A montagem experimental pode ser facilmente adaptada à operação humana para execução local, realizada apenas com o auxilio de um bom cronómetro. As estruturas de aço inox podem ser realizadas em latão ou bronze facilitando a sua talha.<br />
<br />
O cabo empregue pode ser substituído por cabo de aço de pesca desportiva e a massa adquirida numa loja de desporto, tendo sido empregue neste caso uma de 2kg do treino do lançamento do peso olímpico. Deve ser utilizado uma fita-métrica calibrada para medir o comprimento do cabo '''depois''' de utilizar o sistema por alguns dias.<br />
<br />
=Parceiros locais=<br />
O pêndulo <ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref> é um dos dispositivos experimentais com maior riqueza física apesar da sua simplicidade. Efetivamente só a medida do seu cabo e a sua qualidade e dos apoios são relevantes para a construção precisa do instrumento. <br />
<br />
Seleccionando uma massa entre 1 a 4 kg, o erro relativo ao período será suficientemente pequeno para se detetar as variações requeridas na aceleração da gravidade (inferiores a 0,1%) desde que se use um cronómetro preciso.<br />
<br />
Uma montagem local pode ser realizada facilmente com recursos a materiais simples de encontrar e comparado o valor determinado para o <em>"g"</em> local com os da constelação remota de pêndulos. <br />
<br />
A colecção destes dados através duma rede social permitirá fazer uma descrição mais precisa da variabilidade de <em>g's</em> em torno do globo. O "pendulo mundial" poderá ser uma importante rede colaborativa para a disseminação e o envolvimento da física nas escolas.<br />
<br />
A construção e desenvolvimento do pendulo está detalhada em [[Precision Pendulum]] enquanto que as instruções para a sua montagem estão em [[Precision Pendulum Assembly]].<br />
<br />
Se quiser fazer parte da rede do Pêndulo Mundial, por favor envie-nos um [mailto:wwwelab@ist.utl.pt mail].<br />
<br />
=Física=<br />
A determinação da aceleração da gravidade em diferentes partes do globo levanta questões sobre a importância da modelização em física. Partindo do principio que a força da aceleração é constante ao nível do mar, pode-se mostrar contudo que que esta "constante" varia ligeiramente com a latitude e tem por isso de ser corrigida consoante o lugar onde nos encontramos. Este processo permite desmistificar a ciência e corrigir o "mito urbano" existente em torno de muitas constantes que só o são com muitas aproximações. Neste caso particular mostraremos como a introdução de correcções sucessivas à "constante da gravidade" levará a valores mais próximos dos estimados experimentalmente.<br />
<br />
==Modelo geofísico==<br />
O ponto de partida é a aproximação do modelo geofísico da Terra, como sendo (i) uma esfera (ii) não-rotante cuja aproximação mais conhecida atribui o valor de 9,81 ms<sup>-2</sup>. É trivial notar que este modelo, devido à simetria da esfera, leva a valores uniformes em qualquer latitude da Terra. Mas assim que introduzimos a dinâmica do movimento terrestre aperceber-nos-emos que este valor passa a depender da latitude bem como se considerarmos a terra um elipsóide devido ao achatamento nos pólos. Com efeito estes dois aspetos são as principais causas do desvio da "constante da gravidade" com a latitude <ref name="jodl"></ref> e superam todos os outros efeitos tais como (i) a altitude do lugar, (ii) as marés ou (iii) a constituição do sub-solo próximo ao lugar.<br />
<br />
Para demonstrar estes aspetos mais finos, a aceleração da gravidade tem de ser determinada em várias latitudes sobre o globo e bastante afastadas entre si. Com estas medidas obtidas em rede, os alunos poderão questionar-se sobre a "constante" e interpretar melhor a força da gravidade.<br />
<br />
===Estudos experimentais===<br />
====Variação com a latitude====<br />
Como se viu, o primeiro estudo possivel consiste na utilização dos pêndulos remotos e verificar qual a aceleração da gravidade aparente nesses vários locais. Através da introdução (ou desprezo) de vários ajustes tenta-se chegar graficamente a um ajuste da descrição experimental da terra usando harmónicos esféricos (equação \eqref{harmonica-esferica}).<br />
Este estudo pode ser conduzido usando a constelação de pêndulos do e-lab e de [http://rcl-munich.informatik.unibw-muenchen.de/ outros parceiros].<br />
<br />
====Determinação local====<br />
Seguindo as instruções descritas nesta wiki - [[Precision_Pendulum]] - ou usando outro tipo de construção rigorosa dum pêndulo, produz-se e instala-se um pêndulo local e contribui-se para o enriquecimento da folha de cálculo da [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 rede do pêndulo mundial].<br />
<br />
====[[Estudo das marés]]====<br />
Com base num almanaque <ref name0"OAL">http://www.oal.ul.pt/index.php?link=dados2012</ref> obtém-se as datas/horas dos dias de alinhamento da lua com o Sol (marés vivas ou lua-cheia e lua nova) e quando estamos em quarto crescente ou minguante. Traçando um gráfico ao longo de vários meses tenta-se verificar e quantificar a influência das marés e do alinhamento da Lua com o Sol no peso aparente. <br />
Desta forma pode-se tentar associar às marés (luas) e ao movimento de translação eventuais flutuações medidas na aceleração aparente da gravidade, fazendo um estudo com um período mensal e/ou anual (p.exemplo ver as diferenças no periélio de Janeiro c/ lua nova e no afélio de Julho com lua cheia).<br />
O efeito de maré está no limite da deteção dos pendulos usados pelo que é necessário um grande rigôr na hora (a influência solar é muito superior à lunar mas a flutuação é inferior) e o emprego de técnicas numéricas avançadas usando por exemplo a transformada de Fourier.<br />
<br />
====Análise da torção no fio====<br />
[[File:Torcao.jpg||thumb|Efeito da torção do fio e da elipticidade da esfera que origina um erro regular na medida pela fotocélula da velocidade na origem.|right|border|240px]]<br />
Para os mais atentos, a velocidade na origem apresenta uma variação devido à torção do fio e à não-esfericidade da massa. O gráfico anexo demonstra isso. Pode ser efetuado o estudo do pêndulo considerando a massa da bola e a torção no fio, recomendando-se o uso das equações de euler-lagrange.<br />
<br />
==Movimento circular uniformemente acelerado==<br />
<br />
A velocidade de transito da esfera no ponto inferior da trajetória é determinada pela medida do tempo de interrupção do feixe laser.<br />
Com efeito, sabendo o diâmetro da esfera é imediato determinar a velocidade na origem podendo ser inferida a energia cinética máxima. Deste modo, sabendo o comprimento do cabo, pode-se calcular o ponto de lançamento da esfera e confrontar com o ponto de lançamento.<br />
<br />
=A CPLP como "provedor de latitude"=<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|Gráfico com a aceleração da gravidade a determinar pela rede. São Tomé e Príncipe está mesmo sobre o equador.<br />
O valor de Lisboa já foi estabelecido experimentalmente.]]<br />
<br />
A língua é um fator importante da nacionalidade ("a minha pátria á a língua portuguesa", F. Pessoa) e uma maneira simples de definir os chamados "países irmãos". Na prática só quatro línguas estão disseminadas no globo, sendo uma delas o português. Naquilo que nos interessa, o português cobre latitudes de ~30ºS a ~42ºN, quase 75º de variação sobre o equador. Deste modo os países da CPLP poderão servir como "provedores de latitude" (ver figura).<br />
<br />
Para realizar esta experiência e ajustar pontos relevantes à nossa curva experimental precisaremos de pelo menos quatro pontos espaçados em latitude. Mas devido à não-linearidade da equação mais pontos serão convenientes para obter um ajuste firme, principalmente em torno do "joelho" nas latitudes de 10º-30º. Só o Brasil por si permite obter grade parte deste conjunto de pontos (Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) mas não permite suprir os pontos onde a aceleração da gravidade varia mais rapidamente, a região quase linear entre 30º e 60º onde Portugal pode contribuir com dois pontos, por exemplo 37º e 41º. Moçambique e Angola podem contribuir com pontos redundantes próximos ao equador e S. Tomé e Príncipe, Brasil e Cabo Verde com valores equatoriais.<br />
<br />
<br />
=Ajuste experimental=<br />
Existem inúmeras fontes de informação sobre o pêndulo <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref>. Se forem tidas em conta todas as influências significativas a equação harmónica na latitude que resulta pode ser expressa por:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)] \label{harmonica-esferica}<br />
</math><br />
<br />
onde \(\varphi\) é a latitude do lugar. Esta expressão é uma das que melhor ajusta os resultados experimentais de acordo com o "World Geodetic System datum surface (WSG84)", considerando a terra como um elipsóide de raio r<sub>1</sub>=6378137m no equador e r<sub>2</sub>=6356752m como o raio semi-menor polar.<br />
<br />
Propõe-se que se derive pelo menos a correção devido à força centrífuga e do achatamento dos pólos.<br />
<br />
[[File:Period_over_time.png|thumb|Variabilidade do período com o tempo decorrido e consequentemente com a amplitude.(ângulo < 7,5º) demonstrando que o erro é inferior a 0,05%.]]<br />
<br />
Na figura mostra-se o desvio da "constante da gravidade", ou seja o valor real em função da latitude. Estão marcadas as latitudes de alguns possíveis parceiros. Houve a preocupação de evitar que qualquer erro experimental excedesse os 0,05%, tendo em conta um desenho preciso da montagem experimental de forma a conseguir obter a precisão final mínima de 0,1% para poder comparar os dados.<br />
<br />
=Notas históricas=<br />
A importância do pêndulo como elemento base dos relógios e cronografos só foi destronada quando a Royal Society convenceu o parlamento inglesa a instituir um prémio de 10k£ a 20k£ (atualmente mais de 3,5M€) para a invenção dum cronografo que não dependesse dele. Com efeito a precisão do pêndulo na determinação do tempo só é ultrapassada por sistemas eletrónicos modernos.<br />
<br />
Efetivamente, à data dos descobrimentos, a longitude só era determinada com um elevado erro, uma vez que os relógios e cronografos dependiam do pendulo e este era muito sensivel às oscilações dos navios, alterando a sua frequência ou até parando. A hora local do navio era utilizada para comparar com a hora solar (ou estelar) e com esta diferença estabelecia-se a longitude do lugar.<br />
<br />
=Bibliografia=<br />
<br />
<references /><br />
<br />
=Ligações=<br />
*[[World Pendulum | Versão em Inglês (English Version)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Constrói o teu pêndulo]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=P%C3%AAndulo_Mundial&diff=3342Pêndulo Mundial2020-02-05T17:33:09Z<p>Ist165696: /* Aparato experimental */</p>
<hr />
<div>=Descrição=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Decolagem da Soyuz na Guiana francesa @ 5º a norte do equador.|right|border|236px]]<br />
Os foguetões são enviados para o espaço a partir de latitudes equatoriais. Isto deve-se ao facto do peso aparente ser gradualmente reduzido desde os pólos até o equador. Efectivamente sentir-nos-emos mais leves no equador do que nos pólos!<br />
<br />
É esta ligeira diferença que permite poupar toneladas de combustível quando um foguetão é lançado em órbita a partir do equador. Por exemplo, o lançamento para uma orbita geoestacionária pela Soyuz a partir da Guiana Francesa (5ºN) permite colocar 3 toneladas(ton) em órbita ao invés das habituais 1,7 ton quando lançada de Baikonur no Cazaquistão (46ºN).<br />
<br />
O objetivo desta experiência consiste em determinar em vários pontos do globo a “constante da gravidade” através duma constelação de pêndulos colocados em várias latitudes e operados remotamente por qualquer pessoa através da internet. Espera-se que vários países da CPLP possam contribuir para esse esforço, aproximando estudantes, professores e cidadãos interessados no conhecimento físico do nosso planeta. Existem duas atividades a decorrer em paralelo: (i) o acesso através do e-lab a pêndulos em várias latitudes e (ii) a construção e [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 operação local em escolas] com o apoio da comunidade do [http://fqnosecundario.ning.com/ FQ em Rede].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro foram as primeiras cidades a contribuir para a rede em Janeiro de 2013, permitindo efectuar um ajuste dos dados experimentais à equação teórica que descreve a variação da gravidade com a latitude. <br />
<br />
Se quiser fazer parte da rede do Pêndulo Mundial, por favor envie-nos um [mailto:wwwelab@ist.utl.pt mail]. <br />
<br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Ligações'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/wp_epm.sdp<br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratório: Básico em [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Sala de controlo: Pêndulo Mundial<br />
*Nível: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
<br />
==Quem gosta desta iniciativa==<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Aparato experimental=<br />
Os pêndulos utilizados nas experiências são baseados no desenho do Dr. Jodl <ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Algumas alterações menores foram introduzidas ao nível do manuseamento da massa e na adaptação a materiais simples de encontrar de forma a permitir a replicação em escolas secundárias (ensino médio). Os dados seguintes foram utilizados na sua construção:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Exemplo de pêndulo utilizado para a determinação da aceleração da gravidade.]]<br />
<br />
[[File:Stringsuport.png|thumb|Suporte do cabo de ligação à massa que permite evitar alongamentos indesejados durante as oscilações. O cabo é fixo ou com uma agulha de seringa endovenosa ou com um parafuso M4 de latão perfurado interiormente a 1mm.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Caracteristícas físicas particulares<br />
|-<br />
| Local<br />
| Latitude<br />
| Longitude<br />
| Altitude (m)<br />
| Comprimento do fio (mm)<br />
| Diãmetro da esfera (mm)<br />
|-<br />
| CCV_Algarve/Faro<br />
| 37º00'N<br />
| 7º56'W<br />
| 10 m<br />
| 2677mm +/- 0.5mm @23ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| UESC/Ilhéus<br />
| 14º47'S<br />
| 39º10'W<br />
| 220m<br />
| 2705mm +/- 0.5mm @23ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| Lisbon<br />
| 38º41'N<br />
| 9º12'W<br />
| 20m<br />
| 2677mm +/- 0.5mm @19ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| Maputo<br />
| 25º56'S<br />
| 32º36'E<br />
| 80m<br />
| 2609.8mm +/- 0.5mm @27ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| São Tomé<br />
| 0º21'N<br />
| 6º43'E<br />
| 50m<br />
| 2756.5mm +/- 0.5mm @29ºC<br />
| 81.8 +/- 0.5 mm<br />
|-<br />
| Prague - CTU<br />
| 50º5.47N<br />
| 14º24.97E<br />
| 150m<br />
| 2850mm +/- 0.5mm @25ºC<br />
| 80.15 +/- 0.5 mm<br />
|-<br />
| Barcelona - UPC<br />
| 41º24.6N<br />
| 2º13.12E<br />
| 55<br />
| 2756.5mm +/- 0.5mm<br />
| 81.8mm<br />
|-<br />
| Rio de Janeiro - PUC<br />
| 22º54.13S<br />
| 43º12W<br />
| 50<br />
| 2826,0mm +/- 0.5mm<br />
| 81.6mm<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Características nominais<br />
|-<br />
| Comprimento do cabo (raio da esfera não incluído!) || 2705mm +/- 0.5mm<br />
|-<br />
| Massa da esfera || 2kg +/- 75g<br />
|-<br />
| Diâmetro da esfera || 81.2mm +/-1.5mm<br />
|-<br />
| Cabo || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Módulo de elasticidade do cabo || ~200GPa<br />
|-<br />
| Cronómetro || Microcontrolador com cristal de 7,3728MHz - 30ppm + laser + PIN foto-díodo<br />
|-<br />
| Wire CTE (25-500ºC) (Coeficiente expansão térmico do cabo) || ~14 x 10<sup>-6</sup> K<sup>-1</sup><br />
|}<br />
<br />
A montagem experimental pode ser facilmente adaptada à operação humana para execução local, realizada apenas com o auxilio de um bom cronómetro. As estruturas de aço inox podem ser realizadas em latão ou bronze facilitando a sua talha.<br />
<br />
O cabo empregue pode ser substituído por cabo de aço de pesca desportiva e a massa adquirida numa loja de desporto, tendo sido empregue neste caso uma de 2kg do treino do lançamento do peso olímpico. Deve ser utilizado uma fita-métrica calibrada para medir o comprimento do cabo '''depois''' de utilizar o sistema por alguns dias.<br />
<br />
=Parceiros locais=<br />
O pêndulo <ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref> é um dos dispositivos experimentais com maior riqueza física apesar da sua simplicidade. Efetivamente só a medida do seu cabo e a sua qualidade e dos apoios são relevantes para a construção precisa do instrumento. <br />
<br />
Seleccionando uma massa entre 1 a 4 kg, o erro relativo ao período será suficientemente pequeno para se detetar as variações requeridas na aceleração da gravidade (inferiores a 0,1%) desde que se use um cronómetro preciso.<br />
<br />
Uma montagem local pode ser realizada facilmente com recursos a materiais simples de encontrar e comparado o valor determinado para o <em>"g"</em> local com os da constelação remota de pêndulos. <br />
<br />
A colecção destes dados através duma rede social permitirá fazer uma descrição mais precisa da variabilidade de <em>g's</em> em torno do globo. O "pendulo mundial" poderá ser uma importante rede colaborativa para a disseminação e o envolvimento da física nas escolas.<br />
<br />
A construção e desenvolvimento do pendulo está detalhada em [[Precision Pendulum]] enquanto que as instruções para a sua montagem estão em [[Precision Pendulum Assembly]].<br />
<br />
Se quiser fazer parte da rede do Pêndulo Mundial, por favor envie-nos um [mailto:wwwelab@ist.utl.pt mail].<br />
<br />
=Física=<br />
A determinação da aceleração da gravidade em diferentes partes do globo levanta questões sobre a importância da modelização em física. Partindo do principio que a força da aceleração é constante ao nível do mar, pode-se mostrar contudo que que esta "constante" varia ligeiramente com a latitude e tem por isso de ser corrigida consoante o lugar onde nos encontramos. Este processo permite desmistificar a ciência e corrigir o "mito urbano" existente em torno de muitas constantes que só o são com muitas aproximações. Neste caso particular mostraremos como a introdução de correcções sucessivas à "constante da gravidade" levará a valores mais próximos dos estimados experimentalmente.<br />
<br />
==Modelo geofísico==<br />
O ponto de partida é a aproximação do modelo geofísico da Terra, como sendo (i) uma esfera (ii) não-rotante cuja aproximação mais conhecida atribui o valor de 9,81 ms<sup>-2</sup>. É trivial notar que este modelo, devido à simetria da esfera, leva a valores uniformes em qualquer latitude da Terra. Mas assim que introduzimos a dinâmica do movimento terrestre aperceber-nos-emos que este valor passa a depender da latitude bem como se considerarmos a terra um elipsóide devido ao achatamento nos pólos. Com efeito estes dois aspetos são as principais causas do desvio da "constante da gravidade" com a latitude <ref name="jodl"></ref> e superam todos os outros efeitos tais como (i) a altitude do lugar, (ii) as marés ou (iii) a constituição do sub-solo próximo ao lugar.<br />
<br />
Para demonstrar estes aspetos mais finos, a aceleração da gravidade tem de ser determinada em várias latitudes sobre o globo e bastante afastadas entre si. Com estas medidas obtidas em rede, os alunos poderão questionar-se sobre a "constante" e interpretar melhor a força da gravidade.<br />
<br />
===Estudos experimentais===<br />
====Variação com a latitude====<br />
Como se viu, o primeiro estudo possivel consiste na utilização dos pêndulos remotos e verificar qual a aceleração da gravidade aparente nesses vários locais. Através da introdução (ou desprezo) de vários ajustes tenta-se chegar graficamente a um ajuste da descrição experimental da terra usando harmónicos esféricos (equação \eqref{harmonica-esferica}).<br />
Este estudo pode ser conduzido usando a constelação de pêndulos do e-lab e de [http://rcl-munich.informatik.unibw-muenchen.de/ outros parceiros].<br />
<br />
====Determinação local====<br />
Seguindo as instruções descritas nesta wiki - [[Precision_Pendulum]] - ou usando outro tipo de construção rigorosa dum pêndulo, produz-se e instala-se um pêndulo local e contribui-se para o enriquecimento da folha de cálculo da [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 rede do pêndulo mundial].<br />
<br />
====[[Estudo das marés]]====<br />
Com base num almanaque <ref name0"OAL">http://www.oal.ul.pt/index.php?link=dados2012</ref> obtém-se as datas/horas dos dias de alinhamento da lua com o Sol (marés vivas ou lua-cheia e lua nova) e quando estamos em quarto crescente ou minguante. Traçando um gráfico ao longo de vários meses tenta-se verificar e quantificar a influência das marés e do alinhamento da Lua com o Sol no peso aparente. <br />
Desta forma pode-se tentar associar às marés (luas) e ao movimento de translação eventuais flutuações medidas na aceleração aparente da gravidade, fazendo um estudo com um período mensal e/ou anual (p.exemplo ver as diferenças no periélio de Janeiro c/ lua nova e no afélio de Julho com lua cheia).<br />
O efeito de maré está no limite da deteção dos pendulos usados pelo que é necessário um grande rigôr na hora (a influência solar é muito superior à lunar mas a flutuação é inferior) e o emprego de técnicas numéricas avançadas usando por exemplo a transformada de Fourier.<br />
<br />
====Análise da torção no fio====<br />
[[File:Torcao.jpg||thumb|Efeito da torção do fio e da elipticidade da esfera que origina um erro regular na medida pela fotocélula da velocidade na origem.|right|border|240px]]<br />
Para os mais atentos, a velocidade na origem apresenta uma variação devido à torção do fio e à não-esfericidade da massa. O gráfico anexo demonstra isso. Pode ser efetuado o estudo do pêndulo considerando a massa da bola e a torção no fio, recomendando-se o uso das equações de euler-lagrange.<br />
<br />
==Movimento circular uniformemente acelerado==<br />
<br />
A velocidade de transito da esfera no ponto inferior da trajetória é determinada pela medida do tempo de interrupção do feixe laser.<br />
Com efeito, sabendo o diâmetro da esfera é imediato determinar a velocidade na origem podendo ser inferida a energia cinética máxima. Deste modo, sabendo o comprimento do cabo, pode-se calcular o ponto de lançamento da esfera e confrontar com o ponto de lançamento.<br />
<br />
=A CPLP como "provedor de latitude"=<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|Gráfico com a aceleração da gravidade a determinar pela rede. São Tomé e Príncipe está mesmo sobre o equador.<br />
O valor de Lisboa já foi estabelecido experimentalmente.]]<br />
<br />
A língua é um fator importante da nacionalidade ("a minha pátria á a língua portuguesa", F. Pessoa) e uma maneira simples de definir os chamados "países irmãos". Na prática só quatro línguas estão disseminadas no globo, sendo uma delas o português. Naquilo que nos interessa, o português cobre latitudes de ~30ºS a ~42ºN, quase 75º de variação sobre o equador. Deste modo os países da CPLP poderão servir como "provedores de latitude" (ver figura).<br />
<br />
Para realizar esta experiência e ajustar pontos relevantes à nossa curva experimental precisaremos de pelo menos quatro pontos espaçados em latitude. Mas devido à não-linearidade da equação mais pontos serão convenientes para obter um ajuste firme, principalmente em torno do "joelho" nas latitudes de 10º-30º. Só o Brasil por si permite obter grade parte deste conjunto de pontos (Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) mas não permite suprir os pontos onde a aceleração da gravidade varia mais rapidamente, a região quase linear entre 30º e 60º onde Portugal pode contribuir com dois pontos, por exemplo 37º e 41º. Moçambique e Angola podem contribuir com pontos redundantes próximos ao equador e S. Tomé e Príncipe, Brasil e Cabo Verde com valores equatoriais.<br />
<br />
<br />
=Ajuste experimental=<br />
Existem inúmeras fontes de informação sobre o pêndulo <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref>. Se forem tidas em conta todas as influências significativas a equação harmónica na latitude que resulta pode ser expressa por:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)] \label{harmonica-esferica}<br />
</math><br />
<br />
onde \(\varphi\) é a latitude do lugar. Esta expressão é uma das que melhor ajusta os resultados experimentais de acordo com o "World Geodetic System datum surface (WSG84)", considerando a terra como um elipsóide de raio r<sub>1</sub>=6378137m no equador e r<sub>2</sub>=6356752m como o raio semi-menor polar.<br />
<br />
Propõe-se que se derive pelo menos a correção devido à força centrífuga e do achatamento dos pólos.<br />
<br />
[[File:Period_over_time.png|thumb|Variabilidade do período com o tempo decorrido e consequentemente com a amplitude.(ângulo < 7,5º) demonstrando que o erro é inferior a 0,05%.]]<br />
<br />
Na figura mostra-se o desvio da "constante da gravidade", ou seja o valor real em função da latitude. Estão marcadas as latitudes de alguns possíveis parceiros. Houve a preocupação de evitar que qualquer erro experimental excedesse os 0,05%, tendo em conta um desenho preciso da montagem experimental de forma a conseguir obter a precisão final mínima de 0,1% para poder comparar os dados.<br />
<br />
=Notas históricas=<br />
A importância do pêndulo como elemento base dos relógios e cronografos só foi destronada quando a Royal Society convenceu o parlamento inglesa a instituir um prémio de 10k£ a 20k£ (atualmente mais de 3,5M€) para a invenção dum cronografo que não dependesse dele. Com efeito a precisão do pêndulo na determinação do tempo só é ultrapassada por sistemas eletrónicos modernos.<br />
<br />
Efetivamente, à data dos descobrimentos, a longitude só era determinada com um elevado erro, uma vez que os relógios e cronografos dependiam do pendulo e este era muito sensivel às oscilações dos navios, alterando a sua frequência ou até parando. A hora local do navio era utilizada para comparar com a hora solar (ou estelar) e com esta diferença estabelecia-se a longitude do lugar.<br />
<br />
=Bibliografia=<br />
<br />
<references /><br />
<br />
=Ligações=<br />
*[[World Pendulum | Versão em Inglês (English Version)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Constrói o teu pêndulo]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=World_Pendulum&diff=3340World Pendulum2020-02-05T17:32:25Z<p>Ist165696: /* Experimental apparatus */</p>
<hr />
<div>=Description=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Soyuz lift-off from French Guiana @ 5º north of the Equator .|right|border|236px]]<br />
Rockets are launched to space from equatorial latitudes. This is due to the fact that the apparent weight of objects is gradually reduced from the poles to the equator. We will feel lighter at the equator than at the poles!<br />
<br />
This small difference in apparent weight allows the same rocket to launch heavier payloads into orbit if launched nearer from the equator. For example, a Soyuz rocket launching into geostationary orbit from the French Guiana (5ºN) can carry 3 tons while it will only be capable of launching 1.7 tons of cargo when launched from Baikonur, Kazakhstan (46ºN).<br />
<br />
The goal of this experiment is to find the value of the gravity "constant" through a constellation of pendulums placed in various latitudes and remotely operated, through the internet, by anyone. <br />
<br />
It is expected that CPLP countries can contribute to this effort, bringing students, teachers and interested citizens closer together. <br />
<br />
There are two different activities occurring simultaneously: (i) access, through e-lab, of the pendulums located in different latitudes and (ii) the construction and [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 local operation in schools] with the support of the [http://fqnosecundario.ning.com/ FQ em Rede community].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro were the first cities to contribute to the network in January 2013, making it possible for the first fits of experimental data to the theoretical equation within our project that describes how gravity changes with latitude to occur.<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email]. <br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Links'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/worldpendulum_maputo.sdp <br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratory: Basic in [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Control room: World Pendulum<br />
*Grade: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
==Who likes this idea==<br />
<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Experimental apparatus=<br />
The pendulum design used was based in Dr. Jodl's design<ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Some minor changes were made to allow the same design to be easily replicated in high schools. The data concerning each pendulum is as follows:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Pendulum used for the world pendulum standard gravity experiment.]]<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a brass M4 screw 40mm long.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Physical sizes by place<br />
|-<br />
| Place<br />
| Latitude<br />
| Longitude<br />
| Altitude (m)<br />
| String length (mm)<br />
| Sphere diameter (mm)<br />
|-<br />
| CCV_Algarve/Faro<br />
| 37º00'N<br />
| 7º56'W<br />
| 10 m<br />
| 2677mm +/- 0.5mm @23ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| UESC/Ilhéus<br />
| 14º47'S<br />
| 39º10'W<br />
| 220m<br />
| 2705mm +/- 0.5mm @23ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| Lisbon<br />
| 38º41'N<br />
| 9º12'W<br />
| 20m<br />
| 2677mm +/- 0.5mm @19ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| Maputo<br />
| 25º56'S<br />
| 32º36'E<br />
| 80m<br />
| 2609.8mm +/- 0.5mm @27ºC<br />
| 80.5 +/- 1.0 mm<br />
|-<br />
| São Tomé<br />
| 0º21'N<br />
| 6º43'E<br />
| 50m<br />
| 2756.5mm +/- 0.5mm @29ºC<br />
| 81.8 +/- 0.5 mm<br />
|-<br />
| Prague - CTU<br />
| 50º5.47N<br />
| 14º24.97E<br />
| 150m<br />
| 2850mm +/- 0.5mm @25ºC<br />
| 80.15 +/- 0.5 mm<br />
|-<br />
| Barcelona - UPC<br />
| 41º24.6N<br />
| 2º13.12E<br />
| 55<br />
| 2756.5mm +/- 0.5mm<br />
| 81.8mm<br />
|-<br />
| Rio de Janeiro - PUC<br />
| 22º54.13S<br />
| 43º12W<br />
| 50<br />
| 2826,0mm +/- 0.5mm<br />
| 81.6mm<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Typical quantities<br />
|-<br />
| String length (not counting the sphere) || 2705mm +/- 0.5mm<br />
|-<br />
| Sphere mass || 2kg +/- 75g<br />
|-<br />
| Sphere diameter || 81.2mm +/-1.5mm<br />
|-<br />
| String || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Modulus of elasticity of string || ~200GPa<br />
|-<br />
| Oscillation period measurement system || Microprocessor with 7,3728MHz - 30ppm crystal<br />
+ laser + PIN photodiode<br />
|-<br />
| Wire CTE (25-500ºC) (Coefficient of thermal expansion) || ~14 x 10<sup>-6</sup> K<sup>-1</sup><br />
|}<br />
<br />
<br />
The experimental apparatus can be easily adapted to human operation, using a good chronometer, for local execution. The stainless steel structures can made in by brass or bronze for easier machining. The cable used can be replaced by a sport fishing steel cable and the mass can be replaced by a Olympic weight throw training weight, weighing 2Kg. A calibrated measuring tape should be used to measure the cable length, '''a few days after assembling the apparatus to allow for cable expansion'''.<br />
<br />
=Local partners=<br />
The pendulum<ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref>, although one of the simplest systems commonly studied, is one of the richest in terms of physics.<br />
<br />
In order to build a precise pendulum the most important factors are the precise measurement of the length of the cable, its quality, and of that of the pendulum supports. Selecting a mass between 1 to 4 Kg ensures that the pendulum's period error will be small enough for small local gravity changes (smaller than 0.1%) to be detectable, as long as a precise chronometer is used for timekeeping. <br />
<br />
A local apparatus can be assembled using readily available materials and the local <em>"g"</em> values determined using such an apparatus can then be compared to the ones obtained through the remote pendulum constellation and the theoretical model.<br />
<br />
Collecting this data through a social network will allow a more precise description of how <em>"g"</em> varies around the globe. The "World Pendulum" can be an important collaborative network for the dissemination of physics in schools.<br />
<br />
Instructions on how to build such a pendulum are available in [[Precision Pendulum]].<br />
The documentation of the development and construction of a pendulum are available in [[Precision Pendulum]] while the instructions on how to assemble it are available in [[Precision Pendulum Assembly]].<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email].<br />
<br />
=Physics=<br />
Determining gravity's acceleration in different parts of the globe raises questions about the importance of models in physics. It's possible to show that gravity's acceleration at sea level changes with latitude, and therefore a correction is needed for each individual location. This process allows us to demystify science and correct the existing "urban myth" around some physical constants that only are truly constant when some approximations are done. In this particular case, we will show how the introduction of successive corrections to gravity's "constant" will lead to values closer to those experimentally obtained. <br />
<br />
==Geophysical model==<br />
The starting point is the commonly used, constant, value of 9.81 ms<sup>-2</sup>. This is obtained by considering the Earth as being (i) a sphere (ii) that is not rotating. It's trivial to note that this model, due to the symmetry of the spherical form, does not allow for different values in different locations. This changes as soon as Earth's rotation dynamics and ellipsoid shape (flattening of the poles) are taken in account. These factors allow for gravity to change with latitude, and in fact these two factors are the two most important ones in this phenomena, outweighing every other effect, such as (i) altitude, (ii) tidal forces, and (iii) subsoil composition.<br />
<br />
To demonstrate these finer aspects, gravity's acceleration must be determined in various latitudes around the globe distant from each other. Using the data collected, students can then ask themselves about how "constant" the value truly is and improve their intuition of gravity.<br />
<br />
===Experimental studies===<br />
====Variation with latitude====<br />
As seen, the first possible study consists of using the remote pendulums to obtain a measurement of the local gravity acceleration for each location they're based in. Through considering (or not) several factors, it is possible to fit the data to a experimental description of the Earth using spherical harmonics (equation \eqref{harmonica-esferica}). This experimental work can be conducted using e-lab's pendulum constellation and [http://rcl-munich.informatik.unibw-muenchen.de/ our partner's pendulums].<br />
<br />
====Local determination====<br />
Following the instructions available in this wiki - [[Precision_Pendulum]] - or using any other kind of design that results in a rigorous apparatus, a local pendulum is built. It's then possible for measurements of local gravity to be made, as long as a good chronometer is used. Furthermore, it's also possible to contribute to the enrichment of the World Pendulum network's [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 spreadsheet].<br />
<br />
====[[Tidal study]]====<br />
Using an almanac appropriate for the location, on can obtain the times of particular Moon/Sun alignments (full moon, new moon, waxing crescent and waxing gibbous). Plotting a graph spanning several months, one can try to verify and quantify the influence of tidal forces and Moon/Sun alignments in the apparent weight. It's possible to try and verify the correlation between Moon phases and changes in measurement of local gravity, by making a month or year-long study.<br />
Tidal effects are on the limit of detection by the pendulums of the e-lab constellation. For the experiment to be successful, it's necessary to be very rigorous on the time at which the experimental runs are made and some advanced numerical techniques, like the Fourier transform, need to by employed for the signal to be extracted from the data.<br />
<br />
====Analysis of wire torsion ====<br />
[[File:Torcao.jpg||thumb|Effect of wire torsion and sphere ellipticity in the measurement of pendulum speed.|right|border|240px]]<br />
Those paying more attention will note that the speed of the mass changes due to wire torsion and due to the mass not being a perfect sphere. This is pictured in the image to the right. The pendulum can be studied taking into account the effect of the wire torsion (the use of Euler-Lagrange equations is recommended for this).<br />
<br />
==Uniformly accelerated circular movement==<br />
The speed of the sphere in the lowest point of the trajectory is determined by measuring how much time the laser beam is interrupted. Knowing the sphere diameter, it's trivial to determine the speed at the origin. From this, the maximum kinetic energy can be calculated and the launching height of the pendulum determined. The calculated launching point can then be compared with the real one.<br />
<br />
=CPLP as “latitude provider”=<br />
<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|The gravitational constant plotted against latitude with points of interest around the globe highlighted. Principe Island is just over zero latitude. Lisbon value was obtained with the current experiment and already over plotted on the graphic.]]<br />
<br />
Language is an important nationality factor ("My fatherland is the Portuguese language.", F. Pessoa) and a simple way to define what is called brother countries ("países irmãos"). Only four languages are disseminated around the world, Portuguese being one of them. The Portuguese speaking community covers latitudes from ~30S to ~40N, almost a 75º span across the equator. Therefore, CPLP countries can help by being "latitude providers" (see Figure).<br />
<br />
To conduct this world experiment, at least four spaced points are needed in order to have a proper fit. But due to the strong non-linearity of the equation, more points are needed to provide a suitable adjustment, in particular on the "knee" close to the earth’s equator. Brazil itself can provide almost four crucial points close to the equator (e.g. Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) but lacks points with a latitude where the characteristic varies more strongly, the almost linear region around 30º to 60º, where Portugal can give two good points (e.g. Porto - 37º and Faro - 41º). Mozambique can contribute with 27º (Maputo) and S. Tomé e Principe or Brazil are both good choices to cover the equator. Angola could give complementary points to those acquired in Brazil, as the sensibility of the measurement is more pronounced close to the equator and the poles.<br />
<br />
=Data fitting=<br />
Available references <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref> give a very good description of the mathematical model needed to fit the data. If all major factors are taken into account, gravity as a function of latitude is given by:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)]<br />
</math><br />
<br />
where \(\varphi\) is the latitude. This expression is one of the best experimental approximations and results from the standardization agreement to adjust the World Geodetic System datum surface (WSG84) to an ellipsoid with radius r<sub>1</sub>=6378137m at the equator and r<sub>2</sub>=6356752m polar semi-minor radius.<br />
This formula takes into account the fact that the Earth is an ellipsoid and that there is an additional increase in the acceleration of gravity when one moves nearer to the poles, due to a weaker centrifugal force. Nevertheless the students could derive a non-harmonic, first order approximation by taking into account only centrifugal force. Then, as a second step, they could include the two other major errors, the centrifugal force and earth’s ellipsoid format.<br />
<br />
[[File:Period_over_time.png|thumb|The variability of the period with elapsed time (angle amplitude < 7,5º), showing that this error is less than 0,05% regardless initial amplitude.]]<br />
<br />
The pictures shows the expected deviation from the “earth’s constant acceleration”, the real acceleration for each latitude. We have plotted the point already obtained with this apparatus in Lisbon and the marks over the expected latitudes for future partners.<br />
Of course these approximations do not include one important source of deviation from real data to the mathematical model, the experimental error, as we do not include the experimental source of error. However, those systematic errors could be under the expected precision needed (0,1%) for the former approximation if a careful design of the apparatus is considered. Nevertheless those errors must be discussed in advanced courses and their weight must be proved when considering the real pendulum.<br />
<br />
=Historical notes=<br />
The pendulum importance as the basis of clocks and chronographs was only overthrown when the Royal Society convinced the English parliament to create an award, ranging from 10k£ to 20k£ (equivalent nowadays to more than 3.5M€), for the invention of a chronograph that didn't depend on it. The time precision of pendulum based systems is only bettered by modern electronic systems.<br />
<br />
In the discovery age longitude was determined with a high error, since clocks and chronographs were reliant on pendulums and these were very sensitive to ships rocking, suffering changes in frequency or even stopping. Local longitude was calculated by comparing the solar hour (or stellar hour) with the ship's clock time.<br />
<br />
=References=<br />
<br />
<references /><br />
<br />
=Links=<br />
*[[Pêndulo Mundial | Portuguese version (Versão em Português)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Building your own pendulum]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Apparatus_description&diff=3096Precision Pendulum Assembly: Apparatus description2019-12-23T18:03:41Z<p>Ist165696: Ist165696 moved page Precision Pendulum Assembly: Apparatus Description to Precision Pendulum Assembly: Apparatus description: cenas</p>
<hr />
<div>==Apparatus description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Apparatus_Description&diff=3098Precision Pendulum Assembly: Apparatus Description2019-12-23T18:03:41Z<p>Ist165696: Ist165696 moved page Precision Pendulum Assembly: Apparatus Description to Precision Pendulum Assembly: Apparatus description: cenas</p>
<hr />
<div>#REDIRECT [[Precision Pendulum Assembly: Apparatus description]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Apparatus_description&diff=3094Precision Pendulum Assembly: Apparatus description2019-12-23T18:03:22Z<p>Ist165696: </p>
<hr />
<div>==Apparatus description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3092Precision Pendulum Assembly2019-12-23T18:02:44Z<p>Ist165696: </p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus description| Apparatus description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Software management| Software management]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3090Precision Pendulum Assembly2019-12-23T17:29:53Z<p>Ist165696: /* Partners */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Partners&diff=3088Precision Pendulum Assembly: Partners2019-12-23T17:29:48Z<p>Ist165696: Created page with "==Partners== Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon. File:Cenfim_Logo.jpg"</p>
<hr />
<div>==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Electrical_interfaces&diff=3086Precision Pendulum Assembly: Electrical interfaces2019-12-23T17:29:07Z<p>Ist165696: /* Electrical interfaces */</p>
<hr />
<div>==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3084Precision Pendulum Assembly2019-12-23T17:28:50Z<p>Ist165696: /* Non-remote usage */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3082Precision Pendulum Assembly2019-12-23T17:28:39Z<p>Ist165696: /* Calibration */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Calibration&diff=3080Precision Pendulum Assembly: Calibration2019-12-23T17:28:34Z<p>Ist165696: Created page with "==Calibration== ===String measurement=== 320px The pendulum acc..."</p>
<hr />
<div>==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3078Precision Pendulum Assembly2019-12-23T17:28:21Z<p>Ist165696: /* Electrical interfaces */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Electrical_interfaces&diff=3076Precision Pendulum Assembly: Electrical interfaces2019-12-23T17:28:17Z<p>Ist165696: Created page with "==Electrical interfaces== This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of: * a Raspberry..."</p>
<hr />
<div>==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3074Precision Pendulum Assembly2019-12-23T17:28:01Z<p>Ist165696: /* Mechanical assembly */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Mechanical_assembly&diff=3072Precision Pendulum Assembly: Mechanical assembly2019-12-23T17:27:57Z<p>Ist165696: Created page with "==Mechanical assembly== In this section, we describe the procedure to assemble the Tripod metallic structure. ===Order of assembly and filling with sand=== # Screw the thre..."</p>
<hr />
<div>==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
<br />
# Screw the three plastic base support under the triangular base and level the base with the help of a spirit level;<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below;<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below leaving the screws a bit loosy;<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder);<br />
# Fit the last section of each leg following the numeration;<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws;<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the (i) bottom triangle followed by the (ii) top plate;<br />
# Pass the bob cable and fix it in such position that the equatorial plane crosses the photo-gate;<br />
# Having the bob at rest, start the pendular movement by slowly excite the fulcrum in the top.<br />
# With the help of a flashlight in the front of the shovel and putting a white paper on the shovel adjust the horizontal tilt screws in order to have the launcher platform aligned with the plane of oscillation. This can be seen easily if the shadow center of the bob do not move horizontally.<br />
{|<br />
|[[File:TripodMetallicAss_BaseWFeet.jpg|x400px|Base of the metallic structure]] <br />
|[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
|[[File:TripodMetallicAss_FillingSand.jpg|x400px|Fill the legs with sand]]<br />
|[[File:TripodMetallicAss_TopPart.jpg|x400px|Top]]<br />
<br />
|}</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3070Precision Pendulum Assembly2019-12-23T17:27:31Z<p>Ist165696: /* Apparatus Description */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
<br />
# Screw the three plastic base support under the triangular base and level the base with the help of a spirit level;<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below;<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below leaving the screws a bit loosy;<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder);<br />
# Fit the last section of each leg following the numeration;<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws;<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the (i) bottom triangle followed by the (ii) top plate;<br />
# Pass the bob cable and fix it in such position that the equatorial plane crosses the photo-gate;<br />
# Having the bob at rest, start the pendular movement by slowly excite the fulcrum in the top.<br />
# With the help of a flashlight in the front of the shovel and putting a white paper on the shovel adjust the horizontal tilt screws in order to have the launcher platform aligned with the plane of oscillation. This can be seen easily if the shadow center of the bob do not move horizontally.<br />
{|<br />
|[[File:TripodMetallicAss_BaseWFeet.jpg|x400px|Base of the metallic structure]] <br />
|[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
|[[File:TripodMetallicAss_FillingSand.jpg|x400px|Fill the legs with sand]]<br />
|[[File:TripodMetallicAss_TopPart.jpg|x400px|Top]]<br />
<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly:_Apparatus_description&diff=3068Precision Pendulum Assembly: Apparatus description2019-12-23T17:27:24Z<p>Ist165696: Created page with "==Apparatus Description== The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the..."</p>
<hr />
<div>==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3066Precision Pendulum Assembly2019-12-23T17:27:03Z<p>Ist165696: </p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
'''Contents'''<br />
<br />
#[[Precision Pendulum Assembly: Apparatus Description| Apparatus Description]]<br />
#[[Precision Pendulum Assembly: Mechanical assembly| Mechanical assembly]]<br />
#[[Precision Pendulum Assembly: Electrical interfaces| Electrical interfaces]]<br />
#[[Precision Pendulum Assembly: Calibration| Calibration]]<br />
#[[Precision Pendulum Assembly: Partners| Partners]]<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
<br />
# Screw the three plastic base support under the triangular base and level the base with the help of a spirit level;<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below;<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below leaving the screws a bit loosy;<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder);<br />
# Fit the last section of each leg following the numeration;<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws;<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the (i) bottom triangle followed by the (ii) top plate;<br />
# Pass the bob cable and fix it in such position that the equatorial plane crosses the photo-gate;<br />
# Having the bob at rest, start the pendular movement by slowly excite the fulcrum in the top.<br />
# With the help of a flashlight in the front of the shovel and putting a white paper on the shovel adjust the horizontal tilt screws in order to have the launcher platform aligned with the plane of oscillation. This can be seen easily if the shadow center of the bob do not move horizontally.<br />
{|<br />
|[[File:TripodMetallicAss_BaseWFeet.jpg|x400px|Base of the metallic structure]] <br />
|[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
|[[File:TripodMetallicAss_FillingSand.jpg|x400px|Fill the legs with sand]]<br />
|[[File:TripodMetallicAss_TopPart.jpg|x400px|Top]]<br />
<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3062Precision Pendulum Assembly2019-12-12T18:46:41Z<p>Ist165696: /* Order of assembly and filling with sand */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
<br />
<br />
# Screw the three plastic base support under the triangular base <br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below <br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
{|<br />
|[[File:TripodMetallicAss_BaseWFeet.jpg|x400px|Base of the metallic structure]] <br />
|[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
|[[File:TripodMetallicAss_FillingSand.jpg|x400px|Fill the legs with sand]]<br />
|[[File:TripodMetallicAss_TopPart.jpg|x400px|Top]]<br />
<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3060Precision Pendulum Assembly2019-12-12T18:44:45Z<p>Ist165696: /* Order of assembly and filling with sand */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
<br />
<br />
# Screw the three plastic base support under the triangular base <br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below <br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
{|<br />
|[[File:TripodMetallicAss_BaseWFeet.jpg|x200px|Base of the metallic structure]] <br />
|[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
|[[File:TripodMetallicAss_FillingSand.jpg|x400px|Fill the legs with sand]]<br />
<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3058Precision Pendulum Assembly2019-12-12T18:38:26Z<p>Ist165696: /* Order of assembly and filling with sand */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
<br />
<br />
# Screw the three plastic base support under the triangular base<br />
<br />
::[[File:TripodMetallicAss_BaseWFeet.jpg|x200px|Base of the metallic structure]]<br />
<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
<br />
::[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3056Precision Pendulum Assembly2019-12-12T18:36:14Z<p>Ist165696: /* Mechanical assembly */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
[[File:structure_assembly_procedure_crop.png|thumb|Structure assembly procedure]]<br />
<br />
# Screw the three plastic base support under the triangular base<br />
<br />
:[[File:TripodMetallicAss_BaseWFeet.jpg|thumb|Base of the metallic structure]]<br />
<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:TripodMetallicAss_TopPart.jpg&diff=3054File:TripodMetallicAss TopPart.jpg2019-12-12T18:33:51Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:TripodMetallicAss_BaseWFeet.jpg&diff=3052File:TripodMetallicAss BaseWFeet.jpg2019-12-12T18:33:39Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:TripodMetallicAss_ver1.jpg&diff=3050File:TripodMetallicAss ver1.jpg2019-12-12T18:15:48Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:TripodMetallicAss_FillingSand.jpg&diff=3048File:TripodMetallicAss FillingSand.jpg2019-12-12T18:13:53Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3046Precision Pendulum Assembly2019-12-12T18:01:26Z<p>Ist165696: /* Order of assembly and filling with sand */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
[[File:structure_assembly_procedure_crop.png|thumb|Structure assembly procedure]]<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3044Precision Pendulum Assembly2019-12-12T17:21:22Z<p>Ist165696: /* Mechanical assembly */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
In this section, we describe the procedure to assemble the Tripod metallic structure.<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3042Precision Pendulum Assembly2019-12-11T16:58:57Z<p>Ist165696: /* Apparatus Description */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3040Precision Pendulum Assembly2019-12-11T16:50:58Z<p>Ist165696: /* Apparatus Description */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design, slippage is avoided.<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
{|<br />
|[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
|[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
|[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
|[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
|}<br />
<br />
==Mechanical assembly==<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3038Precision Pendulum Assembly2019-12-11T16:48:45Z<p>Ist165696: </p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
{|<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design slippage is avoided.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]][[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]][[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
==Mechanical assembly==<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3036Precision Pendulum Assembly2019-12-11T16:43:42Z<p>Ist165696: /* Apparatus Description */</p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting structure for the pendulum fulcrum, the launcher of the pendulum mass and the controller electronics.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings pt1<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
<br />
{|<br />
|+ World Pendulum standard manufacturing drawings pt2<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has an indentation made with a diamond or hard steel blade which holds the pivot in place. With this design slippage is avoided.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]][[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]][[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
==Mechanical assembly==<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3034Precision Pendulum Assembly2019-12-11T16:20:24Z<p>Ist165696: </p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The pendulum apparatus is composed of three components: the supporting struture, the <br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings pt1<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|}<br />
<br />
{|<br />
|+ World Pendulum standard manufacturing drawings pt2<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
<br />
<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has a scratch made with a diamond or hard steel blade were the pivot work. With this design slippage is avoided.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]][[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]][[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
==Mechanical assembly==<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3032Precision Pendulum Assembly2019-12-11T16:12:14Z<p>Ist165696: </p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has a scratch made with a diamond or hard steel blade were the pivot work. With this design slippage is avoided.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]][[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]][[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
==Mechanical assembly==<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
===Drawings===<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3030Precision Pendulum Assembly2019-12-11T16:10:18Z<p>Ist165696: </p>
<hr />
<div><br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
This page is intended to serve as the assembly instructions for the Precision Pendulum, particularly following the setup developed for the WPA project. This page starts with a brief description of the apparatus and its core components. Then it is followed by the description fo the assembly process which is divided into three core parts: the Mechanical assembly, the electronic controller assembly and the calibration of the setup. An additional step is described for those who want to allow "non-remote" operation (ie: local operation in a museum or common area with public access). <br />
<br />
<br />
==Apparatus Description==<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has a scratch made with a diamond or hard steel blade were the pivot work. With this design slippage is avoided.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
==Mechanical assembly==<br />
<br />
<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
===Drawings===<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3018Precision Pendulum Assembly2019-12-04T16:58:26Z<p>Ist165696: </p>
<hr />
<div><br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into an M4 brass screw 40mm long or an intravenous needle.]]<br />
[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be held on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
'''THIS PAGE IS STILL WORK IN PROGRESS'''<br />
<br />
An accurate pendulum is easy to construct once we get the right materials. The [[World Pendulum]] was designed in a very robust way but a simplified version with common materials is described here.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding an M4 screw and can be found in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface has a scratch made with a diamond or hard steel blade were the pivot work. With this design slippage is avoided.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered an intravenous needle where the pendulum string is glued or soldered. <br />
<br />
==Mechanical assembly==<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
===Drawings===<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 Model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by a USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (especially useful if the experiment is performed during the night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multimeter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well-calibrated measuring tape as to be chose. If this method is adopted special care has to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displaces the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double-check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure that both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading the value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands described above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usually used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use, the gate system can drive an up/down counter. Currently, we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead of a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode, a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Precision_Pendulum_Assembly&diff=3016Precision Pendulum Assembly2019-12-04T16:51:16Z<p>Ist165696: Created page with " [[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a M4 brass screw 40mm long or a intravenous needle.]..."</p>
<hr />
<div><br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a M4 brass screw 40mm long or a intravenous needle.]]<br />
[[File:Fulcro.jpg|thumb|Pendulum string fulcrum detail showing the screw to hold the wire. Remanium is very ductile and easily wound around the screw.]]<br />
[[File:Fulcro&Apoio.jpg|thumb|Fulcrum support structure to be hold on top of the pyramidal pendulum support. Strong M6 or M8 screws are used.]]<br />
<br />
An accurate pendulum is easy to construct once we get the right materials. The [[World Pendulum]] was design in a very robust way but a simplified version with common materials is described here.<br />
<br />
The basic support can be a wall or a robust metallic structure like the one presented here. The choice for the mass was a training steel weight from the official shot put with 2kg. This weight has the advantage of having a drilled hole for holding a M4 screw and can be find in any good sports shop. This screw can be made of a threaded brass rod with 10mm length. A small 1mm hole is drilled on the rod were the pendulum string is soldered using current soldering thin-plumb(or any silver-thin alloy). The string used is from 0.4mm ''remanium'' wire that can be bought in any dentistry retailer. The other end is soldered to the same brass rod with a length of 50mm, using the same technique (1mm hole and soldering).<br />
<br />
The support for the fulcrum is made from any robust plane surface as for instance a brass or stainless steel piece with a 12-16mm hole. This surface have a scratch made with a diamond or hard steel blade were the pivot work. With this design slipper is avoid.<br />
<br />
[[File:PendulumPivot.jpg|thumb|Pendulum holder showing the pivot support structure for the 50mmx9mm triangular pyramid.]]<br />
<br />
The fulcrum itself is made as well of stainless steel or brass consisting in a triangular prism with 50mmx9mm with a central 1mm hole in one face crossing the opposite edge. In this hole is soldered a intravenous needle were the pendulum string is glued or soldered. <br />
<br />
==Mechanical assembly==<br />
There are two types of mechanical assemblies:<br />
* Tripod independent metallic structure<br />
* Wall fixed launcher and pendulum top holder<br />
<br />
===Parts (support structure)===<br />
<br />
===Order of assembly and filling with sand===<br />
# Screw the three plastic base support under the triangular base<br />
# Fit together the three lower sections of each leg following the numeration presented in the figure below<br />
# Fix each one of the legs to the triangular base by tightening the provided screw and taking into account the letters "E" and "D", as shown in the figure below<br />
# Fill the legs with sand while the whole structure is standing in the vertical (use a table or step ladder)<br />
# Fit the last section of each leg following the numeration<br />
# Fit the aluminum top plate and tighten it slightly to each one of the legs using the screws<br />
# To check that both top plate and base triangle are aligned, one can lean the whole structure against a wall and adjust the top plate in accordance if necessary. Once both aligned, firmly tighten the screws of the top plate.<br />
:[[File:structure_assembly_procedure_crop.png|x400px|Structure assembly procedure]]<br />
<br />
===Drawings===<br />
The following drawings document the construction of the metallic pendulum's sections.<br />
{|<br />
|+ World Pendulum standard manufacturing drawings<br />
|[[File:pendulo_mundial_vista.png|thumb]]<br />
|[[File:pendulo_apoio.png|thumb]]<br />
|[[File:pendulo_topo.png|thumb]]<br />
|[[File:pendulo_base.png|thumb]]<br />
|[[File:pendulo_fulcro.png|thumb]]<br />
|}<br />
<br />
==Electrical interfaces==<br />
This section describes the electrical components used to operate the experimental apparatus. As an overview, each launcher consists of:<br />
* a Raspberry Pi (or computer running Linux): makes the interface between the micro-controller and the human (e.g., direct connection to a console) or e-lab server via Internet.<br />
* a micro-controller (dsPic): makes the interface between the electrical components (including the step-motor) and the computer.<br />
* electrical components: laser, micro-switch, photo-gate (or photo-diode), light bulb, temperature sensor, etc... see [[#Parts|Parts]] for detailed description. These components make the interface between the experimental apparatus and the micro-controller while providing ways of controlling the pendulum as well as measurement capabilities.<br />
<br />
See the [[#Connections|Connections]] subsection for details on how to connect the electrical components.<br />
<br />
The photo-gate/photo-diode and laser alignment is described in subsection [[#Photo-gate and laser alignment|Photo-gate and laser alignment]]. This is to be performed only after the micro-controller has been powered up, read section [[#Interface console to micro-controller|Interface console to micro-controller]] first.<br />
<br />
===Parts===<br />
This subsection presents a description of the different electrical parts of the experiment.<br />
* '''Raspberry Pi (RPi)''': Device running Linux to allow remote connection to the experiment as well as an easy way to interface with the micro-controller. The present micro-controller and corresponding flat cable connections are designed for the Raspberry Pi 3 model B, which has the following pin-out connections as described in https://www.raspberrypi.org/documentation/usage/gpio. If the Raspberry Pi is used to also power the micro-controller, a +5 V power supply with at least 2.5 A should be used.<br />
* '''SD card''': The SD card comes with Linux operating system and all necessary additional programs.<br />
* '''micro-controller board''': This board contains a micro-controller (dsPic33F) as well as all peripheral components needed for the control of the experiment. The board can be powered using the flat cable connected to the Raspberry Pi or by an USB connection (an onboard jumper is used to select the power source, the default position corresponds to the one from the flat cable).<br />
* '''webcam''': The webcam is used to provide live video streaming during the execution of the experiment. It is connected to the Raspberry Pi via an USB cable. The RPi performs the encoding and then sends it through Internet.<br />
* '''light bulb''': The light bulb consists of a 12 V LED bulb located above the launcher. This bulb turns on during the execution of the experiment to illuminate the pendulum and launcher (specially useful if the experiment is performed during night).<br />
* '''step-motor''': The step-motor is part of the launcher and it is controlled by the micro-controller via a quad 1/2 H bridge driver. The step-motor is responsible by the displacement of the shovel.<br />
* '''micro-switch''': The micro-switch is located at the origin, close to the 0 cm of the metric scale on the launcher. It used to indicate the micro-controller that the shovel reached the origin and cannot go further in the backward direction (end of course).<br />
* '''laser''': The laser is located approximately at the center of the launcher. In conjunction with the photo-gate/photo-diode, the laser is used to measure the oscillation period as well as the location of the shovel.<br />
* '''photo-gate (or photo-diode)''': The photo-gate is located in front of the laser. The ball travels in-between interrupting the light from the laser periodically.<br />
* '''temperature sensor''': A temperature sensor is located in the DB25 box to measure the ambient temperature. The ambient temperature influences the length of the pendulum. It is therefore important to monitor this quantity.<br />
* '''display''': The display shows the total accumulated number of oscillations. It consists of 8 digits, each one a 7 segments display.<br />
* '''power supply''': The step-motor requires a +12 V power supply capable of providing 2 A (maximum).<br />
* '''start button''': The start button allows to locally start an experiment with a predefined configuration (initial displacement of 10 cm during 20 oscillations).<br />
<br />
===Connections===<br />
<br />
===Photo-gate and laser alignment===<br />
The photo-gate and laser alignment can only be performed once the micro-controller has been turned on and it is communicating with a console. See subsection [[#Interface console to micro-controller|Interface console to micro-controller]] on how to power on the micro-controller and how to control the laser.<br />
The alignment consists of pointing the laser into the hole of the photo-gate structure, as shown below in the figure on the left. The laser orientation can be adjusted using the 3 screws from its holding support structure, figure on the middle. <br />
<br />
The procedure for the alignment consists of the following:<br />
# Turn on the laser using the "laser on" command<br />
# If necessary, adjust the laser orientation so that its light goes into the photo-gate structure hole (figure on the left). An example of misalignment is shown in the figure on the right.<br />
# Perform the [[#Laser and photo-gate test|Laser and photo-gate test]]<br />
{|<br />
|[[File:Laser_in_photogate_crop.jpg|x200px]]<br />
|[[File:Laser_structure_3_screws_crop.jpg|x200px]]<br />
|[[File:Laser_out_photogate_crop.jpg|x200px]]<br />
<br />
|}<br />
<br />
===Electric tests===<br />
* Test the micro-switch with the help of a multi-meter (ohmmeter). When released it should present a very high impedance (order of MOhm) and when pressed it should present a very low impedance (like a shunt, ~0 Ohm). Perform the measurement at the DB25 pins: between pins no. 3 and 4.<br />
* Check voltage of step-motor power supply to ensure that it is not higher than +12 V.<br />
<br />
==Calibration==<br />
<br />
===String measurement===<br />
[[File:CalibracaoFitaMetrica.jpg||thumb|Measuring tape rigorous calibration with a caliper aid.|right|border|320px]]<br />
The pendulum accuracy depends strongly in its rigorous length measurement (~2,700 m) with less than 0,5 mm. Indeed this is the crucial factor to achieve the desired 0,02% accuracy and for that propose a well calibrated measuring tape as to be chose. If this method is adopted special care as to be taken to avoid parallax. Alternative methods like ultrasonic measurement with laser targeting are the best, using a metallic or marble stone plane fitted tangential to the weight (allowing it to roll but touching the plane). With this method a few takes shall be done surrounding the ball and their average value will be considered the pendulum reference length. <br />
<br />
Recalibration of the length as to be pursuit every month to guarantee a reasonable precision.<br />
<br />
In the figure is shown how to correct the measuring tape initial offset by careful eliminating the systematic error from the contact with the sphere.<br />
<br />
===Plane of oscillation===<br />
====Floor parallelism from top and bottom triangles====<br />
====Bob movement given by fulcrum excitation====<br />
<br />
===Interface console to micro-controller===<br />
The micro-controller provides a menu that allows the user to set the parameters of the experiment and run predefined functions to allow configuration and testing.<br />
The interface between user and micro-controller is performed via the RS-232 serial connection with the following parameters:<br />
• Baud-rate: 115200 bps<br />
• Parity: No<br />
• Data bits: 8<br />
• Stop bits: 1<br />
As an example, the “minicom” console interface can be used to communicate with the micro-controller. In the RaspberryPi, this interface can be called from a shell using the following command:<br />
minicom -D /dev/ttyS0<br />
or<br />
minicom -D /dev/ttyAMA0<br />
The “/dev/ttyS0” or "/dev/ttyAMA0" is the device (micro-controller) location. The minicom program will create a serial connection with default parameter which, in principle, are the same as the ones mentioned above. If not, check the help page of the minicom program (type "man minicom") to see how to set those parameters. After launching the program, be sure to add a line feed so that the messages sent by the micro-controller appear in new lines. In minicom, the line feed is activated/deactivated by pressing '''Ctrl+a''' followed by '''a'''.<br />
Once the communication (connection) is established, it is possible to access the micro-controller menu by sending:<br />
? (question mark followed by an enter hit)<br />
or<br />
help (“help” followed by an enter hit)<br />
The output will be similar to the one shown in the following figure:<br />
<br />
[[File:dsPic_console_menu.png|700px|Interface console menu to micro-controller]]<br />
<br />
Every command should be followed by a carriage return – “\r” (hit enter) so that the micro-controller can process the sent string. Hitting enter also clears the micro-controller input buffer, so it can also be used for that purpose. The words in the commands are separated by one space character only except for the “cfg deltaX[…] N[...]” command where the words/inputs are separated by one tab character “\t”. If the sent command is successively received, the micro-controller will reply to the sent command by returning the send command in capital letters. If the command is successively executed the micro-controller will reply with an OK.<br />
<br />
The “[ ]” (square brackets) in the commands define the range of accepted input values. The numeric representation of these limits indicate the type of accepted value, i.e., integer or float. If the limit value contains a decimal case, the accepted values for that parameter are float. If the limit value does not contain a decimal case, the accepted values are integer only.<br />
See the following examples:<br />
cfg deltaX[5:25] N[10:1000] -> cfg 15 30<br />
set maximum position %lf [40.0 60.0] (cm) -> set maximum position 47.7<br />
set catch ball delay %d [1 2000] (ms) -> set catch ball delay 300<br />
set pulley diameter %lf [1.0 4.0] (cm) -> set pulley diameter 2.356<br />
set ID string %s [maximum length of 32 characters] -> set ID string WORLD_PENDULUM_LISBON<br />
cur -> cur<br />
go to origin speed[1.0:50.0] acceleration[1.0:150.0] -> go to origin 11.5 41.1<br />
move forward deltaX[1:50.0] speed[1.0:50.0] acceleration[1.0:150.0] -> move forward 4.5 2.2 2.0 <br />
<br />
Before turning the micro-controller on, it is important to perform two position measurements (maximum and vertical). The procedure to measure these positions is described in [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]].<br />
<br />
====Description of the console menu (commands/outputs)====<br />
Commands related with the state machine and communication with e-lab driver (Java program running in the RaspberryPi):<br />
* '''cur''': Ask the micro-controller about its current configuration. The micro-controller will return the following line:<br />
:[[File:cur_dsPic_return.png|x60px|cur dsPic return]]<br />
* '''str''': Change the micro-controller state to STARTED and starts an experiment if previously configured using a "cfg" command. Once the experiment has started the micro-controller will output the data in the following format: 1st column - data point number, 2nd column - period (s), 3rd column - g (m/s²), 4th column - velocity at laser location (cm/s), 5th column - room temperature (degC). See the figure below for illustration:<br />
:[[File:str_and_data_dsPic_return.png|x230px|str and data dsPic return]]<br />
* '''stp''': Stops an experiment and send the micro-controller to the STOPED state.<br />
* '''rst''': Resets the micro-controller and send it to the RESET state.<br />
* '''ids''': Ask the micro-controller to send an its identifications. E.g.: IDS WP_LIS STOPED<br />
* '''cfg''': Send the configuration for a new experiment. This command accepts two integer parameters: 1st - initial displacement in cm, 2nd - number of oscillations<br />
:[[File:cfg_dsPic_return.png|x60px|cfg dsPic return]]<br />
<br />
Commands to execute predefined functions, useful for calibrations and testing:<br />
* '''stop ball''': This command is used to stop the ball from oscillating. After stopping the ball, the shovel resting position is at the photo-diode/photo-gate.<br />
* '''prepare launch''': This command accepts one integer which corresponds to the initial displacement (maximum amplitude) before releasing the ball. The command displace the shovel to the required position and rests at that position.<br />
* '''launch ball''': This command released the ball by sending the shovel to the origin at its maximum speed.<br />
* '''test laser''': This function is used to simultaneously test the laser and the photo-gate/photo-diode. A more detailed description of this command is found in [[#Laser and photo-gate test|Laser and photo-gate test]] as well as procedures to check in case of a failed test.<br />
* '''go to origin''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''move forward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the forward direction (away from the origin).<br />
* '''move backward''': This command accepts three inputs: 1st - horizontal displacement in cm (double), 2nd - speed in cm/s (double) and 3rd - acceleration in cm/s² (double). It moves the shovel in the backward direction (towards the origin).<br />
* '''move to photodiode''': This command accepts two inputs: 1st - speed in cm/s (double) and 2nd - acceleration in cm/s² (double). It sends the shovel to the photo-diode/photo-gate if the shovel is beyond the photo-diode/photo-gate in the forward direction. If the shovel is between the photo-diode and the origin the command sends the shovel to the origin (until it reaches the micro-switch).<br />
* '''light bulb on''': Turns the light bulb on to illuminate the experiment.<br />
* '''light bulb off''': Turns the light bulb off.<br />
* '''laser on''': Turns the laser on.<br />
* '''laser off''': Turns the laser off.<br />
* '''reboot''': Performs a software reset to the micro-controller. Before resetting, the micro-controller stores the current number of oscillations into the flash memory.<br />
<br />
Commands to set the specific parameters for the experiment (see section [[#Setting specific parameters for the experiment|Setting specific parameters for the experiment]] for more details) and stores them in the flash memory so that they are not lost in case of a power down situation:<br />
* '''set maximum position''': Stores the shovel maximum absolute allowed position in cm (where it is mechanically impossible to go further in the forward direction).<br />
* '''set sphere diameter''': Stores the sphere diameter in cm and measured at the equatorial plane.<br />
* '''set pendulum length''': Stores the length of the pendulum. See [[#String measurement|String measurement]] for details on how to measure the string length. IMPORTANT: the pendulum length should include the radius of the ball.<br />
* '''set origin position''': Stores the position of the shovel when located at the origin, i.e., when the shovel is stopped by pressing the micro-switch.<br />
* '''set vertical position''': Stores the position of the shovel when the pendulum (ball + string) is perfectly vertical.<br />
* '''set photodiode position''': Stores the position of the shovel when located at the photo-doide/photo-gate location.<br />
* '''set catch ball delay''': Stores the delay used to catch (stop) the ball when this one is oscillating with a relatively large amplitude.<br />
* '''set pulley diameter''': Stores the diameter of the pulley attached to the step-motor. This value is used to calibrate the displacement of the shovel.<br />
* '''set display intensity''': Stores the display light intensity. This value should be set so that the numbers are visible/readable on the live video stream when the experiment is running, i.e., when the light bulb is on. 0 is the lowest intensity and 15 is the maximum one.<br />
* '''set global oscillation counter''': Stores the number of total global oscillations. It is also used to override/reset the counter.<br />
* '''set ID string''': Sores the experiment identification string (name of the experiment). The string is limited to a maximum of 32 characters.<br />
<br />
Current values/parameters for information:<br />
* '''expected period''': Shows the expected oscillation period in seconds. This value is calculated with the pendulum length and it essential for the proper operation of the experimental apparatus.<br />
* '''uptime''': Shows the time in secdons since the micro-controller was powered up.<br />
* '''shovel is at origin''': Indicates if the shovel is located at the origin (yes/no).<br />
* '''shovel is at photodiode''': Indicates if the shovel is located at the photo-diode/photo-gate (yes/no).<br />
* '''laser is on''': Indicates if the laser is switched on (yes/no).<br />
* '''photodiode is on''': Indicates if the photo-diode/photo-gate is lit (conducting state) or dark (non-conduction state). The output is yes/no.<br />
* '''temperature''': Indicates the temperature in degrees Celsius. The temperature sensor is located in the DB25 box connected to the micro-controller board.<br />
* '''ERR 1''': Indicates that there is a problem with the laser or photo-diode/photo-gate. See [[#Laser and photo-gate test|Laser and photo-gate test]] for more details and debug procedures.<br />
* '''ERR 2''': Indicates that there is a problem with the micro-switch. See [[#Connections|Connections]] to double check that the micro-switch is properly connected.<br />
<br />
====Laser and photo-gate test====<br />
The micro-controller has a dedicated function (accessible from the console menu) to test the laser and photo-gate simultaneously. This function consist of blinking the laser 5 times with a full period of 100 ms (500 ms total). If the photo-gate correctly detects the laser state the test will be successful. To manually run the laser and photo-gate test, just type the “test laser” command in the console.<br />
During booting, the micro-controller runs the laser and photo-gate test function to ensure that both components are working properly. If the test fails, the micro-controller returns the “ERR1” error code. This error can be associated with one or more of the following possible problems:<br />
* Wrong electrical connections: Check section [[#Connections|Connections]] to ensure the both laser and photogate are properly connected to the micro-controller.<br />
* Laser and photo-gate misalignment: Check if the laser light is properly pointed to the photo-gate structure hole and adjust as described in section [[#Photo-gate and laser alignment|Photo-gate and laser alignment]] if needed.<br />
* The photo-gate is always closed (conducting): If the ambient light is too intense or if some source of light other than the laser is going through the photo-gate structure hole with enough intensity, it can happen that the photo-gate is always conducting making it impossible to the micro-controller to distinguish between laser ON and OFF states. In this case, the solution is to reduce the ambient light or change the experiment orientation so that the photo-gate receives less light.<br />
After trying to correct the possible source of errors, re-run the test to check if the problem is solved.<br />
<br />
====Setting specific parameters for the experiment====<br />
Some of the settable parameters are essential for the correct and safe operation of the launcher and overall experiment. This subsection describes how to measure and set each one of the parameters.<br />
The following settable parameters need to be measured with the micro-controller turned off (powered off). These parameters are:<br />
* '''maximum position''': The shovel maximum position is measured by slowly displacing the shovel with the hand towards the end of the sliding structure (when the slider is fully extended). Once the shovel reaches the end position (cannot move further) record its absolute position by reading value at the scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:maximum_position.png|x100px|Maximum position]]<br />
<br />
<br />
* '''vertical position''': This position is obtained when the pendulum (ball + string) is in the perfectly vertical position. For that, slowly move the shovel in the backwards direction (towards the origin or micro-switch) until it has passed the vertical pendulum position. Wait for the ball to stop totally. Once the ball is fully stopped, approach the shovel in the direction of the ball until it touches the ball but without displacing it. Record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:[[File:vertical_position.png|x100px|Vertical position]]<br />
<br />
<br />
Once the above parameters have been measured, turn on the micro-controller by powering on the Raspberry Pi. During boot, the micro-controller performs some initial tests.<br />
Allow some time until those tests are finished before trying to send commands to the controller.<br />
In the meantime, set-up the serial console connection to receive messages from the controller.<br />
Once the controller is sending its identification string or an error code, the controller finished to boot and we can now set the specific parameters for the experiment.<br />
For that, use the commands describe above. Here follows one example:<br />
set maximum position 47.7<br />
If the command was sent and interpreted successfully, the micro-controller should reply in the following way:<br />
:[[File:return_set_maximum_position.png|x100px|Return maximum position]]<br />
<br />
Perform the same for the vertical position.<br />
<br />
<br />
* '''pendulum length''': The procedure to measure the string is described in [[#String measurement|String measurement]]. Then, the radius of the sphere/ball (in the vertical direction, i.e., along the string direction) should be added to the string length, resulting in the pendulum length. The unit of length for this quantity is meter (unlike the other ones which is centimeter). Once the pendulum length has been measured, store the value in the micro-controller flash by using the command "set pendulum length".<br />
<br />
<br />
* '''sphere diameter''': The sphere diameter should be measured at the ball equatorial plane where the laser points on the ball. If not mentioned or impossible to measure, consider 8 cm, which should be close enough to the usual used spheres. This measurement is mainly used for the determination of the pendulum speed at the laser location. Once the sphere diameter has been measured, store the value in the micro-controller flash by using the command "set sphere diameter".<br />
:[[File:sphere_diameter_measurement_crop.png|x200px|Sphere diameter measurement]]<br />
<br />
<br />
* '''origin position''': This is the location of the shovel when it is stopped by the micro-switch (see figure below for illustration). To measure this position:<br />
:* send the shovel to the origin using the following command:<br />
go to origin 2 2<br />
:* once the shovel is stopped, record the absolute shovel position by reading the value on the metric scale fixed on the launcher with the help of the indicator attached to the shovel.<br />
:* store the measured value (xx.xx) in the micro-controller flash memory using the command "set origin position".<br />
:[[File:origin_position.png|x100px|Origin position]]<br />
<br />
<br />
* '''pulley diameter''': The diameter of the pulley that is attached to the step-motor is used to calibrate the displacement of the shovel. A good initial guess can be obtained by measuring its diameter directly, as shown in the figure below. After storing this parameter in the micro-controller a more accurate calibration should be performed, described as the following:<br />
:* move the shovel to the origin by sending the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm, e.g., "move forward 40 2 2" (a speed of 2 cm/s is slow enough to guarantee a good calibration)<br />
:* check how much was the actual displacement: reached position - origin position<br />
:* if the displacement is different then the requested one (by more than 1 mm) scale linearly the pulley diameter to match the actual displacement with the requested one<br />
:* store the new "pulley diameter" in the micro-controller by using the command "set pulley diameter"<br />
:* resend the shovel back to the origin using the command "go to origin 2 2"<br />
:* use the command "move forward" and request a displacement of 40 cm. This time the reached position should corresponds to a displacement of 40 cm.<br />
:[[File:pulley_diameter_measurement_crop.png|x200px|Pulley diameter measurement]]<br />
<br />
<br />
* '''photodiode position''': The potodiode position corresponds to the location of the shovel when this one is stopped at the photo-diode/photo-gate, see the figure below for illustration. The procedure to obtain this position is the following:<br />
:* locate the shovel beyond (in the forward direction) the photo-gate and laser location. This can be achieved by using the command "move forward", as before.<br />
:* send the shovel to the photodiode using the command "move to photodiode", e.g., "move to photodiode 2 2" (to use a small speed of 2 cm/s)<br />
:* once the shove is stopped record the position on the metric scale and store it in the micro-controller using the command "set photodiode position"<br />
:[[File:photodiode_position.png|x100px|Photodiode_position]]<br />
<br />
<br />
<br />
After setting all parameters, double check if they were properly stored in the micro-controller by checking them on the menu by typing "?" or "help" on the console:<br />
<br />
[[File:setting_parameters_check.png|200px|Parameter set]]<br />
<br />
===Local gravity (comparison with on-line calc tipo https://www.sensorsone.com/)===<br />
<br />
==Non-remote usage==<br />
For local use the gate system can drive a up/down counter. Currently we have adopted the Velleman multifunction up/down counter [https://www.velleman.eu/products/view/?id=348233 kit K8035] avaiable off-the-shelf. The connection to the photo-diode is done via the VCC to the UP channel (pin 9) using just the first (R14) 2,2k resistor and eliminating the protection circuit in the transistor's gate (ZD1, R15 and R18).<br />
<br />
The device should operate with ''Long debounce'' enable. Moreover we can use the regulated power supply (5V) in series with a 33 Ohms resistor to feed the photogate's laser pointing device.<br />
<br />
===Gate system===<br />
[[File:photogateholder.jpg|thumb|Photodiode holder forming one side of the photogate - far right - and the laser pointer holder with 3 bolts to adjust the beam focus at left. It is visible the motor and the mass launcher.]]<br />
To avoid a long run of the experiment to achieve a reasonable period accuracy readout with a normal chronometer one could use instead a gated photo-detector connected to an acquisition system or to a precision pulse counter.<br />
<br />
The [[World Pendulum]] design can be easily adapted as it consists on a photodiode mounted in a aluminium (or PVC) holder (20x20x6 mm<sup>3</sup>) with a central 1,5mm hole and a 4mm cavity on the back side(see design) where is fixed the photodiode with a black plastic wax.<br />
<br />
In front of the photodiode a solid-state laser beam from a normal pointer device is used to trigger the counter once the ball hide the light.<br />
<br />
==Partners==<br />
Mechanical structures in suport of high schools replicas have been assembled and constructed with the kind help of CENFIM, Lisbon.<br />
[[File:Cenfim_Logo.jpg]]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=World_Pendulum&diff=3014World Pendulum2019-12-04T16:50:02Z<p>Ist165696: /* Local partners */</p>
<hr />
<div>=Description=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Soyuz lift-off from French Guiana @ 5º north of the Equator .|right|border|236px]]<br />
Rockets are launched to space from equatorial latitudes. This is due to the fact that the apparent weight of objects is gradually reduced from the poles to the equator. We will feel lighter at the equator than at the poles!<br />
<br />
This small difference in apparent weight allows the same rocket to launch heavier payloads into orbit if launched nearer from the equator. For example, a Soyuz rocket launching into geostationary orbit from the French Guiana (5ºN) can carry 3 tons while it will only be capable of launching 1.7 tons of cargo when launched from Baikonur, Kazakhstan (46ºN).<br />
<br />
The goal of this experiment is to find the value of the gravity "constant" through a constellation of pendulums placed in various latitudes and remotely operated, through the internet, by anyone. <br />
<br />
It is expected that CPLP countries can contribute to this effort, bringing students, teachers and interested citizens closer together. <br />
<br />
There are two different activities occurring simultaneously: (i) access, through e-lab, of the pendulums located in different latitudes and (ii) the construction and [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 local operation in schools] with the support of the [http://fqnosecundario.ning.com/ FQ em Rede community].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro were the first cities to contribute to the network in January 2013, making it possible for the first fits of experimental data to the theoretical equation within our project that describes how gravity changes with latitude to occur.<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email]. <br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Links'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/worldpendulum_maputo.sdp <br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratory: Basic in [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Control room: World Pendulum<br />
*Grade: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
==Who likes this idea==<br />
<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Experimental apparatus=<br />
The pendulum design used was based in Dr. Jodl's design<ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Some minor changes were made to allow the same design to be easily replicated in high schools. The data concerning each pendulum is as follows:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Pendulum used for the world pendulum standard gravity experiment.]]<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a brass M4 screw 40mm long.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Physical sizes by place<br />
|-<br />
| Place || Latitude || Longitude || Altitude (m) || String length (mm) || Sphere diameter (mm)<br />
|-<br />
| CCV_Alg/FARO || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| UESC/ILHÉUS || || || || 2705mm +/- 0.5mm || <br />
|-<br />
| LISBON || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| MAPUTO || || || || 2609.8mm +/- 0.5mm @27ºC || <br />
|-<br />
| SÃO TOMÉ || || || || 2756.5mm +/- 0.5mm (r=40.9mm) || <br />
|-<br />
| CTU PRAGUE || 50º5.47N || 14º 24.97E || 150 || 2850 +/- 0.5mm (r=40.1mm)|| 80.2<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Typical quantities<br />
|-<br />
| String length (not counting the sphere) || 2705mm +/- 0.5mm<br />
|-<br />
| Sphere mass || 2kg +/- 75g<br />
|-<br />
| Sphere diameter || 81.2mm +/-1.5mm<br />
|-<br />
| String || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Modulus of elasticity of string || ~200GPa<br />
|-<br />
| Oscillation period measurement system || Microprocessor with 7,3728MHz - 30ppm crystal<br />
+ laser + PIN photodiode<br />
|-<br />
| Wire CTE (25-500ºC) (Coefficient of thermal expansion) || ~14 x 10<sup>-6</sup> K<sup>-1</sup><br />
|}<br />
<br />
<br />
The experimental apparatus can be easily adapted to human operation, using a good chronometer, for local execution. The stainless steel structures can made in by brass or bronze for easier machining. The cable used can be replaced by a sport fishing steel cable and the mass can be replaced by a Olympic weight throw training weight, weighing 2Kg. A calibrated measuring tape should be used to measure the cable length, '''a few days after assembling the apparatus to allow for cable expansion'''.<br />
<br />
=Local partners=<br />
The pendulum<ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref>, although one of the simplest systems commonly studied, is one of the richest in terms of physics.<br />
<br />
In order to build a precise pendulum the most important factors are the precise measurement of the length of the cable, its quality, and of that of the pendulum supports. Selecting a mass between 1 to 4 Kg ensures that the pendulum's period error will be small enough for small local gravity changes (smaller than 0.1%) to be detectable, as long as a precise chronometer is used for timekeeping. <br />
<br />
A local apparatus can be assembled using readily available materials and the local <em>"g"</em> values determined using such an apparatus can then be compared to the ones obtained through the remote pendulum constellation and the theoretical model.<br />
<br />
Collecting this data through a social network will allow a more precise description of how <em>"g"</em> varies around the globe. The "World Pendulum" can be an important collaborative network for the dissemination of physics in schools.<br />
<br />
Instructions on how to build such a pendulum are available in [[Precision Pendulum]].<br />
The documentation of the development and construction of a pendulum are available in [[Precision Pendulum]] while the instructions on how to assemble it are available in [[Precision Pendulum Assembly]].<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email].<br />
<br />
=Physics=<br />
Determining gravity's acceleration in different parts of the globe raises questions about the importance of models in physics. It's possible to show that gravity's acceleration at sea level changes with latitude, and therefore a correction is needed for each individual location. This process allows us to demystify science and correct the existing "urban myth" around some physical constants that only are truly constant when some approximations are done. In this particular case, we will show how the introduction of successive corrections to gravity's "constant" will lead to values closer to those experimentally obtained. <br />
<br />
==Geophysical model==<br />
The starting point is the commonly used, constant, value of 9.81 ms<sup>-2</sup>. This is obtained by considering the Earth as being (i) a sphere (ii) that is not rotating. It's trivial to note that this model, due to the symmetry of the spherical form, does not allow for different values in different locations. This changes as soon as Earth's rotation dynamics and ellipsoid shape (flattening of the poles) are taken in account. These factors allow for gravity to change with latitude, and in fact these two factors are the two most important ones in this phenomena, outweighing every other effect, such as (i) altitude, (ii) tidal forces, and (iii) subsoil composition.<br />
<br />
To demonstrate these finer aspects, gravity's acceleration must be determined in various latitudes around the globe distant from each other. Using the data collected, students can then ask themselves about how "constant" the value truly is and improve their intuition of gravity.<br />
<br />
===Experimental studies===<br />
====Variation with latitude====<br />
As seen, the first possible study consists of using the remote pendulums to obtain a measurement of the local gravity acceleration for each location they're based in. Through considering (or not) several factors, it is possible to fit the data to a experimental description of the Earth using spherical harmonics (equation \eqref{harmonica-esferica}). This experimental work can be conducted using e-lab's pendulum constellation and [http://rcl-munich.informatik.unibw-muenchen.de/ our partner's pendulums].<br />
<br />
====Local determination====<br />
Following the instructions available in this wiki - [[Precision_Pendulum]] - or using any other kind of design that results in a rigorous apparatus, a local pendulum is built. It's then possible for measurements of local gravity to be made, as long as a good chronometer is used. Furthermore, it's also possible to contribute to the enrichment of the World Pendulum network's [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 spreadsheet].<br />
<br />
====[[Tidal study]]====<br />
Using an almanac appropriate for the location, on can obtain the times of particular Moon/Sun alignments (full moon, new moon, waxing crescent and waxing gibbous). Plotting a graph spanning several months, one can try to verify and quantify the influence of tidal forces and Moon/Sun alignments in the apparent weight. It's possible to try and verify the correlation between Moon phases and changes in measurement of local gravity, by making a month or year-long study.<br />
Tidal effects are on the limit of detection by the pendulums of the e-lab constellation. For the experiment to be successful, it's necessary to be very rigorous on the time at which the experimental runs are made and some advanced numerical techniques, like the Fourier transform, need to by employed for the signal to be extracted from the data.<br />
<br />
====Analysis of wire torsion ====<br />
[[File:Torcao.jpg||thumb|Effect of wire torsion and sphere ellipticity in the measurement of pendulum speed.|right|border|240px]]<br />
Those paying more attention will note that the speed of the mass changes due to wire torsion and due to the mass not being a perfect sphere. This is pictured in the image to the right. The pendulum can be studied taking into account the effect of the wire torsion (the use of Euler-Lagrange equations is recommended for this).<br />
<br />
==Uniformly accelerated circular movement==<br />
The speed of the sphere in the lowest point of the trajectory is determined by measuring how much time the laser beam is interrupted. Knowing the sphere diameter, it's trivial to determine the speed at the origin. From this, the maximum kinetic energy can be calculated and the launching height of the pendulum determined. The calculated launching point can then be compared with the real one.<br />
<br />
=CPLP as “latitude provider”=<br />
<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|The gravitational constant plotted against latitude with points of interest around the globe highlighted. Principe Island is just over zero latitude. Lisbon value was obtained with the current experiment and already over plotted on the graphic.]]<br />
<br />
Language is an important nationality factor ("My fatherland is the Portuguese language.", F. Pessoa) and a simple way to define what is called brother countries ("países irmãos"). Only four languages are disseminated around the world, Portuguese being one of them. The Portuguese speaking community covers latitudes from ~30S to ~40N, almost a 75º span across the equator. Therefore, CPLP countries can help by being "latitude providers" (see Figure).<br />
<br />
To conduct this world experiment, at least four spaced points are needed in order to have a proper fit. But due to the strong non-linearity of the equation, more points are needed to provide a suitable adjustment, in particular on the "knee" close to the earth’s equator. Brazil itself can provide almost four crucial points close to the equator (e.g. Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) but lacks points with a latitude where the characteristic varies more strongly, the almost linear region around 30º to 60º, where Portugal can give two good points (e.g. Porto - 37º and Faro - 41º). Mozambique can contribute with 27º (Maputo) and S. Tomé e Principe or Brazil are both good choices to cover the equator. Angola could give complementary points to those acquired in Brazil, as the sensibility of the measurement is more pronounced close to the equator and the poles.<br />
<br />
=Data fitting=<br />
Available references <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref> give a very good description of the mathematical model needed to fit the data. If all major factors are taken into account, gravity as a function of latitude is given by:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)]<br />
</math><br />
<br />
where \(\varphi\) is the latitude. This expression is one of the best experimental approximations and results from the standardization agreement to adjust the World Geodetic System datum surface (WSG84) to an ellipsoid with radius r<sub>1</sub>=6378137m at the equator and r<sub>2</sub>=6356752m polar semi-minor radius.<br />
This formula takes into account the fact that the Earth is an ellipsoid and that there is an additional increase in the acceleration of gravity when one moves nearer to the poles, due to a weaker centrifugal force. Nevertheless the students could derive a non-harmonic, first order approximation by taking into account only centrifugal force. Then, as a second step, they could include the two other major errors, the centrifugal force and earth’s ellipsoid format.<br />
<br />
[[File:Period_over_time.png|thumb|The variability of the period with elapsed time (angle amplitude < 7,5º), showing that this error is less than 0,05% regardless initial amplitude.]]<br />
<br />
The pictures shows the expected deviation from the “earth’s constant acceleration”, the real acceleration for each latitude. We have plotted the point already obtained with this apparatus in Lisbon and the marks over the expected latitudes for future partners.<br />
Of course these approximations do not include one important source of deviation from real data to the mathematical model, the experimental error, as we do not include the experimental source of error. However, those systematic errors could be under the expected precision needed (0,1%) for the former approximation if a careful design of the apparatus is considered. Nevertheless those errors must be discussed in advanced courses and their weight must be proved when considering the real pendulum.<br />
<br />
=Historical notes=<br />
The pendulum importance as the basis of clocks and chronographs was only overthrown when the Royal Society convinced the English parliament to create an award, ranging from 10k£ to 20k£ (equivalent nowadays to more than 3.5M€), for the invention of a chronograph that didn't depend on it. The time precision of pendulum based systems is only bettered by modern electronic systems.<br />
<br />
In the discovery age longitude was determined with a high error, since clocks and chronographs were reliant on pendulums and these were very sensitive to ships rocking, suffering changes in frequency or even stopping. Local longitude was calculated by comparing the solar hour (or stellar hour) with the ship's clock time.<br />
<br />
=References=<br />
<br />
<references /><br />
<br />
=Links=<br />
*[[Pêndulo Mundial | Portuguese version (Versão em Português)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Building your own pendulum]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=P%C3%AAndulo_Mundial&diff=3012Pêndulo Mundial2019-12-04T16:47:55Z<p>Ist165696: /* Parceiros locais */</p>
<hr />
<div>=Descrição=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Decolagem da Soyuz na Guiana francesa @ 5º a norte do equador.|right|border|236px]]<br />
Os foguetões são enviados para o espaço a partir de latitudes equatoriais. Isto deve-se ao facto do peso aparente ser gradualmente reduzido desde os pólos até o equador. Efectivamente sentir-nos-emos mais leves no equador do que nos pólos!<br />
<br />
É esta ligeira diferença que permite poupar toneladas de combustível quando um foguetão é lançado em órbita a partir do equador. Por exemplo, o lançamento para uma orbita geoestacionária pela Soyuz a partir da Guiana Francesa (5ºN) permite colocar 3 toneladas(ton) em órbita ao invés das habituais 1,7 ton quando lançada de Baikonur no Cazaquistão (46ºN).<br />
<br />
O objetivo desta experiência consiste em determinar em vários pontos do globo a “constante da gravidade” através duma constelação de pêndulos colocados em várias latitudes e operados remotamente por qualquer pessoa através da internet. Espera-se que vários países da CPLP possam contribuir para esse esforço, aproximando estudantes, professores e cidadãos interessados no conhecimento físico do nosso planeta. Existem duas atividades a decorrer em paralelo: (i) o acesso através do e-lab a pêndulos em várias latitudes e (ii) a construção e [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 operação local em escolas] com o apoio da comunidade do [http://fqnosecundario.ning.com/ FQ em Rede].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro foram as primeiras cidades a contribuir para a rede em Janeiro de 2013, permitindo efectuar um ajuste dos dados experimentais à equação teórica que descreve a variação da gravidade com a latitude. <br />
<br />
Se quiser fazer parte da rede do Pêndulo Mundial, por favor envie-nos um [mailto:wwwelab@ist.utl.pt mail]. <br />
<br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Ligações'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/wp_epm.sdp<br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratório: Básico em [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Sala de controlo: Pêndulo Mundial<br />
*Nível: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
<br />
==Quem gosta desta iniciativa==<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Aparato experimental=<br />
Os pêndulos utilizados nas experiências são baseados no desenho do Dr. Jodl <ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Algumas alterações menores foram introduzidas ao nível do manuseamento da massa e na adaptação a materiais simples de encontrar de forma a permitir a replicação em escolas secundárias (ensino médio). Os dados seguintes foram utilizados na sua construção:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Exemplo de pêndulo utilizado para a determinação da aceleração da gravidade.]]<br />
<br />
[[File:Stringsuport.png|thumb|Suporte do cabo de ligação à massa que permite evitar alongamentos indesejados durante as oscilações. O cabo é fixo ou com uma agulha de seringa endovenosa ou com um parafuso M4 de latão perfurado interiormente a 1mm.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Caracteristícas físicas particulares<br />
|-<br />
| Local || Latitude || Longitude || Altitude (m) || String length (mm) || Sphere diameter (mm)<br />
|-<br />
| CCV_Alg/FARO || 37º00'N || 7º56'W || 10 m || 2677mm +/- 0.5mm @23ºC|| 80.5 +/- 1.0 mm<br />
|-<br />
| UESC/ILHÉUS || 14º47'S || 39º10'W || 220m || 2705mm +/- 0.5mm @23ºC || 80.5 +/- 1.0 mm<br />
|-<br />
| LISBON || 38º41'N || 9º12'W || 20m || 2677mm +/- 0.5mm @19ºC|| 80.5 +/- 1.0 mm<br />
|-<br />
| MAPUTO || 25º56'S || 32º36'E || 80m || 2609.8mm +/- 0.5mm @27ºC || 80.5 +/- 1.0 mm<br />
|-<br />
| SÃO TOMÉ || 0º21'N || 6º43'E || 50m || 2756.5mm +/- 0.5mm @29ºC || 81.8 +/- 0.5 mm<br />
|-<br />
| CTU PRAGUE || 50º5.47N || 14º24.97E || 150m || 28505mm +/- 0.5mm @25ºC || 80.15 +/- 0.5 mm<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Características nominais<br />
|-<br />
| Comprimento do cabo (raio da esfera não incluído!) || 2705mm +/- 0.5mm<br />
|-<br />
| Massa da esfera || 2kg +/- 75g<br />
|-<br />
| Diâmetro da esfera || 81.2mm +/-1.5mm<br />
|-<br />
| Cabo || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Módulo de elasticidade do cabo || ~200GPa<br />
|-<br />
| Cronómetro || Microcontrolador com cristal de 7,3728MHz - 30ppm + laser + PIN foto-díodo<br />
|-<br />
| Wire CTE (25-500ºC) (Coeficiente expansão térmico do cabo) || ~14 x 10<sup>-6</sup> K<sup>-1</sup><br />
|}<br />
<br />
A montagem experimental pode ser facilmente adaptada à operação humana para execução local, realizada apenas com o auxilio de um bom cronómetro. As estruturas de aço inox podem ser realizadas em latão ou bronze facilitando a sua talha.<br />
<br />
O cabo empregue pode ser substituído por cabo de aço de pesca desportiva e a massa adquirida numa loja de desporto, tendo sido empregue neste caso uma de 2kg do treino do lançamento do peso olímpico. Deve ser utilizado uma fita-métrica calibrada para medir o comprimento do cabo '''depois''' de utilizar o sistema por alguns dias.<br />
<br />
=Parceiros locais=<br />
O pêndulo <ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref> é um dos dispositivos experimentais com maior riqueza física apesar da sua simplicidade. Efetivamente só a medida do seu cabo e a sua qualidade e dos apoios são relevantes para a construção precisa do instrumento. <br />
<br />
Seleccionando uma massa entre 1 a 4 kg, o erro relativo ao período será suficientemente pequeno para se detetar as variações requeridas na aceleração da gravidade (inferiores a 0,1%) desde que se use um cronómetro preciso.<br />
<br />
Uma montagem local pode ser realizada facilmente com recursos a materiais simples de encontrar e comparado o valor determinado para o <em>"g"</em> local com os da constelação remota de pêndulos. <br />
<br />
A colecção destes dados através duma rede social permitirá fazer uma descrição mais precisa da variabilidade de <em>g's</em> em torno do globo. O "pendulo mundial" poderá ser uma importante rede colaborativa para a disseminação e o envolvimento da física nas escolas.<br />
<br />
A construção e desenvolvimento do pendulo está detalhada em [[Precision Pendulum]] enquanto que as instruções para a sua montagem estão em [[Precision Pendulum Assembly]].<br />
<br />
Se quiser fazer parte da rede do Pêndulo Mundial, por favor envie-nos um [mailto:wwwelab@ist.utl.pt mail].<br />
<br />
=Física=<br />
A determinação da aceleração da gravidade em diferentes partes do globo levanta questões sobre a importância da modelização em física. Partindo do principio que a força da aceleração é constante ao nível do mar, pode-se mostrar contudo que que esta "constante" varia ligeiramente com a latitude e tem por isso de ser corrigida consoante o lugar onde nos encontramos. Este processo permite desmistificar a ciência e corrigir o "mito urbano" existente em torno de muitas constantes que só o são com muitas aproximações. Neste caso particular mostraremos como a introdução de correcções sucessivas à "constante da gravidade" levará a valores mais próximos dos estimados experimentalmente.<br />
<br />
==Modelo geofísico==<br />
O ponto de partida é a aproximação do modelo geofísico da Terra, como sendo (i) uma esfera (ii) não-rotante cuja aproximação mais conhecida atribui o valor de 9,81 ms<sup>-2</sup>. É trivial notar que este modelo, devido à simetria da esfera, leva a valores uniformes em qualquer latitude da Terra. Mas assim que introduzimos a dinâmica do movimento terrestre aperceber-nos-emos que este valor passa a depender da latitude bem como se considerarmos a terra um elipsóide devido ao achatamento nos pólos. Com efeito estes dois aspetos são as principais causas do desvio da "constante da gravidade" com a latitude <ref name="jodl"></ref> e superam todos os outros efeitos tais como (i) a altitude do lugar, (ii) as marés ou (iii) a constituição do sub-solo próximo ao lugar.<br />
<br />
Para demonstrar estes aspetos mais finos, a aceleração da gravidade tem de ser determinada em várias latitudes sobre o globo e bastante afastadas entre si. Com estas medidas obtidas em rede, os alunos poderão questionar-se sobre a "constante" e interpretar melhor a força da gravidade.<br />
<br />
===Estudos experimentais===<br />
====Variação com a latitude====<br />
Como se viu, o primeiro estudo possivel consiste na utilização dos pêndulos remotos e verificar qual a aceleração da gravidade aparente nesses vários locais. Através da introdução (ou desprezo) de vários ajustes tenta-se chegar graficamente a um ajuste da descrição experimental da terra usando harmónicos esféricos (equação \eqref{harmonica-esferica}).<br />
Este estudo pode ser conduzido usando a constelação de pêndulos do e-lab e de [http://rcl-munich.informatik.unibw-muenchen.de/ outros parceiros].<br />
<br />
====Determinação local====<br />
Seguindo as instruções descritas nesta wiki - [[Precision_Pendulum]] - ou usando outro tipo de construção rigorosa dum pêndulo, produz-se e instala-se um pêndulo local e contribui-se para o enriquecimento da folha de cálculo da [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 rede do pêndulo mundial].<br />
<br />
====[[Estudo das marés]]====<br />
Com base num almanaque <ref name0"OAL">http://www.oal.ul.pt/index.php?link=dados2012</ref> obtém-se as datas/horas dos dias de alinhamento da lua com o Sol (marés vivas ou lua-cheia e lua nova) e quando estamos em quarto crescente ou minguante. Traçando um gráfico ao longo de vários meses tenta-se verificar e quantificar a influência das marés e do alinhamento da Lua com o Sol no peso aparente. <br />
Desta forma pode-se tentar associar às marés (luas) e ao movimento de translação eventuais flutuações medidas na aceleração aparente da gravidade, fazendo um estudo com um período mensal e/ou anual (p.exemplo ver as diferenças no periélio de Janeiro c/ lua nova e no afélio de Julho com lua cheia).<br />
O efeito de maré está no limite da deteção dos pendulos usados pelo que é necessário um grande rigôr na hora (a influência solar é muito superior à lunar mas a flutuação é inferior) e o emprego de técnicas numéricas avançadas usando por exemplo a transformada de Fourier.<br />
<br />
====Análise da torção no fio====<br />
[[File:Torcao.jpg||thumb|Efeito da torção do fio e da elipticidade da esfera que origina um erro regular na medida pela fotocélula da velocidade na origem.|right|border|240px]]<br />
Para os mais atentos, a velocidade na origem apresenta uma variação devido à torção do fio e à não-esfericidade da massa. O gráfico anexo demonstra isso. Pode ser efetuado o estudo do pêndulo considerando a massa da bola e a torção no fio, recomendando-se o uso das equações de euler-lagrange.<br />
<br />
==Movimento circular uniformemente acelerado==<br />
<br />
A velocidade de transito da esfera no ponto inferior da trajetória é determinada pela medida do tempo de interrupção do feixe laser.<br />
Com efeito, sabendo o diâmetro da esfera é imediato determinar a velocidade na origem podendo ser inferida a energia cinética máxima. Deste modo, sabendo o comprimento do cabo, pode-se calcular o ponto de lançamento da esfera e confrontar com o ponto de lançamento.<br />
<br />
=A CPLP como "provedor de latitude"=<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|Gráfico com a aceleração da gravidade a determinar pela rede. São Tomé e Príncipe está mesmo sobre o equador.<br />
O valor de Lisboa já foi estabelecido experimentalmente.]]<br />
<br />
A língua é um fator importante da nacionalidade ("a minha pátria á a língua portuguesa", F. Pessoa) e uma maneira simples de definir os chamados "países irmãos". Na prática só quatro línguas estão disseminadas no globo, sendo uma delas o português. Naquilo que nos interessa, o português cobre latitudes de ~30ºS a ~42ºN, quase 75º de variação sobre o equador. Deste modo os países da CPLP poderão servir como "provedores de latitude" (ver figura).<br />
<br />
Para realizar esta experiência e ajustar pontos relevantes à nossa curva experimental precisaremos de pelo menos quatro pontos espaçados em latitude. Mas devido à não-linearidade da equação mais pontos serão convenientes para obter um ajuste firme, principalmente em torno do "joelho" nas latitudes de 10º-30º. Só o Brasil por si permite obter grade parte deste conjunto de pontos (Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) mas não permite suprir os pontos onde a aceleração da gravidade varia mais rapidamente, a região quase linear entre 30º e 60º onde Portugal pode contribuir com dois pontos, por exemplo 37º e 41º. Moçambique e Angola podem contribuir com pontos redundantes próximos ao equador e S. Tomé e Príncipe, Brasil e Cabo Verde com valores equatoriais.<br />
<br />
<br />
=Ajuste experimental=<br />
Existem inúmeras fontes de informação sobre o pêndulo <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref>. Se forem tidas em conta todas as influências significativas a equação harmónica na latitude que resulta pode ser expressa por:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)] \label{harmonica-esferica}<br />
</math><br />
<br />
onde \(\varphi\) é a latitude do lugar. Esta expressão é uma das que melhor ajusta os resultados experimentais de acordo com o "World Geodetic System datum surface (WSG84)", considerando a terra como um elipsóide de raio r<sub>1</sub>=6378137m no equador e r<sub>2</sub>=6356752m como o raio semi-menor polar.<br />
<br />
Propõe-se que se derive pelo menos a correção devido à força centrífuga e do achatamento dos pólos.<br />
<br />
[[File:Period_over_time.png|thumb|Variabilidade do período com o tempo decorrido e consequentemente com a amplitude.(ângulo < 7,5º) demonstrando que o erro é inferior a 0,05%.]]<br />
<br />
Na figura mostra-se o desvio da "constante da gravidade", ou seja o valor real em função da latitude. Estão marcadas as latitudes de alguns possíveis parceiros. Houve a preocupação de evitar que qualquer erro experimental excedesse os 0,05%, tendo em conta um desenho preciso da montagem experimental de forma a conseguir obter a precisão final mínima de 0,1% para poder comparar os dados.<br />
<br />
=Notas históricas=<br />
A importância do pêndulo como elemento base dos relógios e cronografos só foi destronada quando a Royal Society convenceu o parlamento inglesa a instituir um prémio de 10k£ a 20k£ (atualmente mais de 3,5M€) para a invenção dum cronografo que não dependesse dele. Com efeito a precisão do pêndulo na determinação do tempo só é ultrapassada por sistemas eletrónicos modernos.<br />
<br />
Efetivamente, à data dos descobrimentos, a longitude só era determinada com um elevado erro, uma vez que os relógios e cronografos dependiam do pendulo e este era muito sensivel às oscilações dos navios, alterando a sua frequência ou até parando. A hora local do navio era utilizada para comparar com a hora solar (ou estelar) e com esta diferença estabelecia-se a longitude do lugar.<br />
<br />
=Bibliografia=<br />
<br />
<references /><br />
<br />
=Ligações=<br />
*[[World Pendulum | Versão em Inglês (English Version)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Constrói o teu pêndulo]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=World_Pendulum&diff=2628World Pendulum2019-03-27T15:59:33Z<p>Ist165696: /* Experimental apparatus */</p>
<hr />
<div>=Description=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Soyuz lift-off from French Guiana @ 5º north of the Equator .|right|border|236px]]<br />
Rockets are launched to space from equatorial latitudes. This is due to the fact that the apparent weight of objects is gradually reduced from the poles to the equator. We will feel lighter at the equator than at the poles!<br />
<br />
This small difference in apparent weight allows the same rocket to launch heavier payloads into orbit if launched nearer from the equator. For example, a Soyuz rocket launching into geostationary orbit from the French Guiana (5ºN) can carry 3 tons while it will only be capable of launching 1.7 tons of cargo when launched from Baikonur, Kazakhstan (46ºN).<br />
<br />
The goal of this experiment is to find the value of the gravity "constant" through a constellation of pendulums placed in various latitudes and remotely operated, through the internet, by anyone. <br />
<br />
It is expected that CPLP countries can contribute to this effort, bringing students, teachers and interested citizens closer together. <br />
<br />
There are two different activities occurring simultaneously: (i) access, through e-lab, of the pendulums located in different latitudes and (ii) the construction and [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 local operation in schools] with the support of the [http://fqnosecundario.ning.com/ FQ em Rede community].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro were the first cities to contribute to the network in January 2013, making it possible for the first fits of experimental data to the theoretical equation within our project that describes how gravity changes with latitude to occur.<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email]. <br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Links'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/worldpendulum_maputo.sdp <br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratory: Basic in [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Control room: World Pendulum<br />
*Grade: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
==Who likes this idea==<br />
<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Experimental apparatus=<br />
The pendulem design used was based in Dr. Jodl's design<ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Some minor changes were made to allow the same design to be easily replicated in high schools. The data concerning each pendulum is as follows:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Pendulum used for the world pendulum standard gravity experiment.]]<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a brass M4 screw 40mm long.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Physical sizes by place<br />
|-<br />
| Place || Latitude || Longitude || Altitude (m) || String length (mm) || Sphere diameter (mm)<br />
|-<br />
| CCV_Alg/FARO || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| UESC/ILHÉUS || || || || 2705mm +/- 0.5mm || <br />
|-<br />
| LISBON || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| MAPUTO || || || || 2609.8mm +/- 0.5mm @27ºC || <br />
|-<br />
| SÃO TOMÉ || || || || 2756.5mm +/- 0.5mm (r=40.9mm) || <br />
|-<br />
| CTU PRAGUE || 50º5.47N || 14º 24.97E || 150 || 2850 || 80.15<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Typical quantities<br />
|-<br />
| String length (not counting the sphere) || 2705mm +/- 0.5mm<br />
|-<br />
| Sphere mass || 2kg +/- 75g<br />
|-<br />
| Sphere diameter || 81.2mm +/-1.5mm<br />
|-<br />
| String || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Modulus of elasticity of string || ~200GPa<br />
|-<br />
| Oscillation period measurement system || Microprocessor with 7,3728MHz - 30ppm crystal<br />
+ laser + PIN photodiode<br />
|-<br />
| Wire CTE (25-500ºC) (Coefficient of thermal expansion) || ~14 x 10<sup>-6</sup> K<sup>-1</sup><br />
|}<br />
<br />
<br />
The experimental apparatus can be easily adapted to human operation, using a good chronometer, for local execution. The stainless steel structures can made in by brass or bronze for easier machining. The cable used can be replaced by a sport fishing steel cable and the mass can be replaced by a Olympic weight throw training weight, weighing 2Kg. A calibrated measuring tape should be used to measure the cable length, '''a few days after assembling the apparatus to allow for cable expansion'''.<br />
<br />
=Local partners=<br />
The pendulum<ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref>, although one of the simplest systems commonly studied, is one of the richest in terms of physics.<br />
<br />
In order to build a precise pendulum the most important factors are the precise measurement of the length of the cable, its quality, and of that of the pendulum supports. Selecting a mass between 1 to 4 Kg ensures that the pendulum's period error will be small enough for small local gravity changes (smaller than 0.1%) to be detectable, as long as a precise chronometer is used for timekeeping. <br />
<br />
A local apparatus can be assembled using readily available materials and the local <em>"g"</em> values determined using such an apparatus can then be compared to the ones obtained through the remote pendulum constellation and the theoretical model.<br />
<br />
Collecting this data through a social network will allow a more precise description of how <em>"g"</em> varies around the globe. The "World Pendulum" can be an important collaborative network for the dissemination of physics in schools.<br />
<br />
Instructions on how to build such a pendulum are available in [[Precision Pendulum]].<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email].<br />
<br />
=Physics=<br />
Determining gravity's acceleration in different parts of the globe raises questions about the importance of models in physics. It's possible to show that gravity's acceleration at sea level changes with latitude, and therefore a correction is needed for each individual location. This process allows us to demystify science and correct the existing "urban myth" around some physical constants that only are truly constant when some approximations are done. In this particular case, we will show how the introduction of successive corrections to gravity's "constant" will lead to values closer to those experimentally obtained. <br />
<br />
==Geophysical model==<br />
The starting point is the commonly used, constant, value of 9.81 ms<sup>-2</sup>. This is obtained by considering the Earth as being (i) a sphere (ii) that is not rotating. It's trivial to note that this model, due to the symmetry of the spherical form, does not allow for different values in different locations. This changes as soon as Earth's rotation dynamics and ellipsoid shape (flattening of the poles) are taken in account. These factors allow for gravity to change with latitude, and in fact these two factors are the two most important ones in this phenomena, outweighing every other effect, such as (i) altitude, (ii) tidal forces, and (iii) subsoil composition.<br />
<br />
To demonstrate these finer aspects, gravity's acceleration must be determined in various latitudes around the globe distant from each other. Using the data collected, students can then ask themselves about how "constant" the value truly is and improve their intuition of gravity.<br />
<br />
===Experimental studies===<br />
====Variation with latitude====<br />
As seen, the first possible study consists of using the remote pendulums to obtain a measurement of the local gravity acceleration for each location they're based in. Through considering (or not) several factors, it is possible to fit the data to a experimental description of the Earth using spherical harmonics (equation \eqref{harmonica-esferica}). This experimental work can be conducted using e-lab's pendulum constellation and [http://rcl-munich.informatik.unibw-muenchen.de/ our partner's pendulums].<br />
<br />
====Local determination====<br />
Following the instructions available in this wiki - [[Precision_Pendulum]] - or using any other kind of design that results in a rigorous apparatus, a local pendulum is built. It's then possible for measurements of local gravity to be made, as long as a good chronometer is used. Furthermore, it's also possible to contribute to the enrichment of the World Pendulum network's [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 spreadsheet].<br />
<br />
====[[Tidal study]]====<br />
Using an almanac appropriate for the location, on can obtain the times of particular Moon/Sun alignments (full moon, new moon, waxing crescent and waxing gibbous). Plotting a graph spanning several months, one can try to verify and quantify the influence of tidal forces and Moon/Sun alignments in the apparent weight. It's possible to try and verify the correlation between Moon phases and changes in measurement of local gravity, by making a month or year-long study.<br />
Tidal effects are on the limit of detection by the pendulums of the e-lab constellation. For the experiment to be successful, it's necessary to be very rigorous on the time at which the experimental runs are made and some advanced numerical techniques, like the Fourier transform, need to by employed for the signal to be extracted from the data.<br />
<br />
====Analysis of wire torsion ====<br />
[[File:Torcao.jpg||thumb|Effect of wire torsion and sphere ellipticity in the measurement of pendulum speed.|right|border|240px]]<br />
Those paying more attention will note that the speed of the mass changes due to wire torsion and due to the mass not being a perfect sphere. This is pictured in the image to the right. The pendulum can be studied taking into account the effect of the wire torsion (the use of Euler-Lagrange equations is recommended for this).<br />
<br />
==Uniformly accelerated circular movement==<br />
The speed of the sphere in the lowest point of the trajectory is determined by measuring how much time the laser beam is interrupted. Knowing the sphere diameter, it's trivial to determine the speed at the origin. From this, the maximum kinetic energy can be calculated and the launching height of the pendulum determined. The calculated launching point can then be compared with the real one.<br />
<br />
=CPLP as “latitude provider”=<br />
<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|The gravitational constant plotted against latitude with points of interest around the globe highlighted. Principe Island is just over zero latitude. Lisbon value was obtained with the current experiment and already over plotted on the graphic.]]<br />
<br />
Language is an important nationality factor ("My fatherland is the Portuguese language.", F. Pessoa) and a simple way to define what is called brother countries ("países irmãos"). Only four languages are disseminated around the world, Portuguese being one of them. The Portuguese speaking community covers latitudes from ~30S to ~40N, almost a 75º span across the equator. Therefore, CPLP countries can help by being "latitude providers" (see Figure).<br />
<br />
To conduct this world experiment, at least four spaced points are needed in order to have a proper fit. But due to the strong non-linearity of the equation, more points are needed to provide a suitable adjustment, in particular on the "knee" close to the earth’s equator. Brazil itself can provide almost four crucial points close to the equator (e.g. Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) but lacks points with a latitude where the characteristic varies more strongly, the almost linear region around 30º to 60º, where Portugal can give two good points (e.g. Porto - 37º and Faro - 41º). Mozambique can contribute with 27º (Maputo) and S. Tomé e Principe or Brazil are both good choices to cover the equator. Angola could give complementary points to those acquired in Brazil, as the sensibility of the measurement is more pronounced close to the equator and the poles.<br />
<br />
=Data fitting=<br />
Available references <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref> give a very good description of the mathematical model needed to fit the data. If all major factors are taken into account, gravity as a function of latitude is given by:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)]<br />
</math><br />
<br />
where \(\varphi\) is the latitude. This expression is one of the best experimental approximations and results from the standardization agreement to adjust the World Geodetic System datum surface (WSG84) to an ellipsoid with radius r<sub>1</sub>=6378137m at the equator and r<sub>2</sub>=6356752m polar semi-minor radius.<br />
This formula takes into account the fact that the Earth is an ellipsoid and that there is an additional increase in the acceleration of gravity when one moves nearer to the poles, due to a weaker centrifugal force. Nevertheless the students could derive a non-harmonic, first order approximation by taking into account only centrifugal force. Then, as a second step, they could include the two other major errors, the centrifugal force and earth’s ellipsoid format.<br />
<br />
[[File:Period_over_time.png|thumb|The variability of the period with elapsed time (angle amplitude < 7,5º), showing that this error is less than 0,05% regardless initial amplitude.]]<br />
<br />
The pictures shows the expected deviation from the “earth’s constant acceleration”, the real acceleration for each latitude. We have plotted the point already obtained with this apparatus in Lisbon and the marks over the expected latitudes for future partners.<br />
Of course these approximations do not include one important source of deviation from real data to the mathematical model, the experimental error, as we do not include the experimental source of error. However, those systematic errors could be under the expected precision needed (0,1%) for the former approximation if a careful design of the apparatus is considered. Nevertheless those errors must be discussed in advanced courses and their weight must be proved when considering the real pendulum.<br />
<br />
=Historical notes=<br />
The pendulum importance as the basis of clocks and chronographs was only overthrown when the Royal Society convinced the English parliament to create an award, ranging from 10k£ to 20k£ (equivalent nowadays to more than 3.5M€), for the invention of a chronograph that didn't depend on it. The time precision of pendulum based systems is only bettered by modern electronic systems.<br />
<br />
In the discovery age longitude was determined with a high error, since clocks and chronographs were reliant on pendulums and these were very sensitive to ships rocking, suffering changes in frequency or even stopping. Local longitude was calculated by comparing the solar hour (or stellar hour) with the ship's clock time.<br />
<br />
=References=<br />
<br />
<references /><br />
<br />
=Links=<br />
*[[Pêndulo Mundial | Portuguese version (Versão em Português)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Building your own pendulum]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=World_Pendulum&diff=2626World Pendulum2019-03-27T15:56:56Z<p>Ist165696: /* Experimental apparatus */</p>
<hr />
<div>=Description=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Soyuz lift-off from French Guiana @ 5º north of the Equator .|right|border|236px]]<br />
Rockets are launched to space from equatorial latitudes. This is due to the fact that the apparent weight of objects is gradually reduced from the poles to the equator. We will feel lighter at the equator than at the poles!<br />
<br />
This small difference in apparent weight allows the same rocket to launch heavier payloads into orbit if launched nearer from the equator. For example, a Soyuz rocket launching into geostationary orbit from the French Guiana (5ºN) can carry 3 tons while it will only be capable of launching 1.7 tons of cargo when launched from Baikonur, Kazakhstan (46ºN).<br />
<br />
The goal of this experiment is to find the value of the gravity "constant" through a constellation of pendulums placed in various latitudes and remotely operated, through the internet, by anyone. <br />
<br />
It is expected that CPLP countries can contribute to this effort, bringing students, teachers and interested citizens closer together. <br />
<br />
There are two different activities occurring simultaneously: (i) access, through e-lab, of the pendulums located in different latitudes and (ii) the construction and [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 local operation in schools] with the support of the [http://fqnosecundario.ning.com/ FQ em Rede community].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro were the first cities to contribute to the network in January 2013, making it possible for the first fits of experimental data to the theoretical equation within our project that describes how gravity changes with latitude to occur.<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email]. <br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Links'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/worldpendulum_maputo.sdp <br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratory: Basic in [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Control room: World Pendulum<br />
*Grade: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
==Who likes this idea==<br />
<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Experimental apparatus=<br />
The pendulem design used was based in Dr. Jodl's design<ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Some minor changes were made to allow the same design to be easily replicated in high schools. The data concerning each pendulum is as follows:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Pendulum used for the world pendulum standard gravity experiment.]]<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a brass M4 screw 40mm long.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Physical sizes by place<br />
|-<br />
| Place || Latitude || Longitude || Altitude (m) || String length (mm) || Sphere diameter (mm)<br />
|-<br />
| CCV_Alg/FARO || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| UESC/ILHÉUS || || || || 2705mm +/- 0.5mm || <br />
|-<br />
| LISBON || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| MAPUTO || || || || 2609.8mm +/- 0.5mm @27ºC || <br />
|-<br />
| SÃO TOMÉ || || || || 2756.5mm +/- 0.5mm (r=40.9mm) || <br />
|-<br />
| CTU PRAGUE || 50º5.47N || 14º 24.97E || 150 || 2850 || 80.15<br />
|}<br />
<br />
<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Typical quantities<br />
|-<br />
| String length (not counting the sphere) || 2705mm +/- 0.5mm<br />
|-<br />
| Sphere mass || 2kg +/- 75g<br />
|-<br />
| Sphere diameter || 81.2mm +/-1.5mm<br />
|-<br />
| String || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Modulus of elasticity of string || ~200GPa<br />
|-<br />
| Oscillation period measurement system || Microprocessor with 7,3728MHz - 30ppm crystal<br />
+ laser + PIN photodiode<br />
|-<br />
| Wire CTE (25-500ºC) (Coefficient of thermal expansion) || ~14 x 10-6 K-1<br />
|}<br />
<br />
<br />
The experimental apparatus can be easily adapted to human operation, using a good chronometer, for local execution. The stainless steel structures can made in by brass or bronze for easier machining. The cable used can be replaced by a sport fishing steel cable and the mass can be replaced by a Olympic weight throw training weight, weighing 2Kg. A calibrated measuring tape should be used to measure the cable length, '''a few days after assembling the apparatus to allow for cable expansion'''.<br />
<br />
=Local partners=<br />
The pendulum<ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref>, although one of the simplest systems commonly studied, is one of the richest in terms of physics.<br />
<br />
In order to build a precise pendulum the most important factors are the precise measurement of the length of the cable, its quality, and of that of the pendulum supports. Selecting a mass between 1 to 4 Kg ensures that the pendulum's period error will be small enough for small local gravity changes (smaller than 0.1%) to be detectable, as long as a precise chronometer is used for timekeeping. <br />
<br />
A local apparatus can be assembled using readily available materials and the local <em>"g"</em> values determined using such an apparatus can then be compared to the ones obtained through the remote pendulum constellation and the theoretical model.<br />
<br />
Collecting this data through a social network will allow a more precise description of how <em>"g"</em> varies around the globe. The "World Pendulum" can be an important collaborative network for the dissemination of physics in schools.<br />
<br />
Instructions on how to build such a pendulum are available in [[Precision Pendulum]].<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email].<br />
<br />
=Physics=<br />
Determining gravity's acceleration in different parts of the globe raises questions about the importance of models in physics. It's possible to show that gravity's acceleration at sea level changes with latitude, and therefore a correction is needed for each individual location. This process allows us to demystify science and correct the existing "urban myth" around some physical constants that only are truly constant when some approximations are done. In this particular case, we will show how the introduction of successive corrections to gravity's "constant" will lead to values closer to those experimentally obtained. <br />
<br />
==Geophysical model==<br />
The starting point is the commonly used, constant, value of 9.81 ms<sup>-2</sup>. This is obtained by considering the Earth as being (i) a sphere (ii) that is not rotating. It's trivial to note that this model, due to the symmetry of the spherical form, does not allow for different values in different locations. This changes as soon as Earth's rotation dynamics and ellipsoid shape (flattening of the poles) are taken in account. These factors allow for gravity to change with latitude, and in fact these two factors are the two most important ones in this phenomena, outweighing every other effect, such as (i) altitude, (ii) tidal forces, and (iii) subsoil composition.<br />
<br />
To demonstrate these finer aspects, gravity's acceleration must be determined in various latitudes around the globe distant from each other. Using the data collected, students can then ask themselves about how "constant" the value truly is and improve their intuition of gravity.<br />
<br />
===Experimental studies===<br />
====Variation with latitude====<br />
As seen, the first possible study consists of using the remote pendulums to obtain a measurement of the local gravity acceleration for each location they're based in. Through considering (or not) several factors, it is possible to fit the data to a experimental description of the Earth using spherical harmonics (equation \eqref{harmonica-esferica}). This experimental work can be conducted using e-lab's pendulum constellation and [http://rcl-munich.informatik.unibw-muenchen.de/ our partner's pendulums].<br />
<br />
====Local determination====<br />
Following the instructions available in this wiki - [[Precision_Pendulum]] - or using any other kind of design that results in a rigorous apparatus, a local pendulum is built. It's then possible for measurements of local gravity to be made, as long as a good chronometer is used. Furthermore, it's also possible to contribute to the enrichment of the World Pendulum network's [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 spreadsheet].<br />
<br />
====[[Tidal study]]====<br />
Using an almanac appropriate for the location, on can obtain the times of particular Moon/Sun alignments (full moon, new moon, waxing crescent and waxing gibbous). Plotting a graph spanning several months, one can try to verify and quantify the influence of tidal forces and Moon/Sun alignments in the apparent weight. It's possible to try and verify the correlation between Moon phases and changes in measurement of local gravity, by making a month or year-long study.<br />
Tidal effects are on the limit of detection by the pendulums of the e-lab constellation. For the experiment to be successful, it's necessary to be very rigorous on the time at which the experimental runs are made and some advanced numerical techniques, like the Fourier transform, need to by employed for the signal to be extracted from the data.<br />
<br />
====Analysis of wire torsion ====<br />
[[File:Torcao.jpg||thumb|Effect of wire torsion and sphere ellipticity in the measurement of pendulum speed.|right|border|240px]]<br />
Those paying more attention will note that the speed of the mass changes due to wire torsion and due to the mass not being a perfect sphere. This is pictured in the image to the right. The pendulum can be studied taking into account the effect of the wire torsion (the use of Euler-Lagrange equations is recommended for this).<br />
<br />
==Uniformly accelerated circular movement==<br />
The speed of the sphere in the lowest point of the trajectory is determined by measuring how much time the laser beam is interrupted. Knowing the sphere diameter, it's trivial to determine the speed at the origin. From this, the maximum kinetic energy can be calculated and the launching height of the pendulum determined. The calculated launching point can then be compared with the real one.<br />
<br />
=CPLP as “latitude provider”=<br />
<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|The gravitational constant plotted against latitude with points of interest around the globe highlighted. Principe Island is just over zero latitude. Lisbon value was obtained with the current experiment and already over plotted on the graphic.]]<br />
<br />
Language is an important nationality factor ("My fatherland is the Portuguese language.", F. Pessoa) and a simple way to define what is called brother countries ("países irmãos"). Only four languages are disseminated around the world, Portuguese being one of them. The Portuguese speaking community covers latitudes from ~30S to ~40N, almost a 75º span across the equator. Therefore, CPLP countries can help by being "latitude providers" (see Figure).<br />
<br />
To conduct this world experiment, at least four spaced points are needed in order to have a proper fit. But due to the strong non-linearity of the equation, more points are needed to provide a suitable adjustment, in particular on the "knee" close to the earth’s equator. Brazil itself can provide almost four crucial points close to the equator (e.g. Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) but lacks points with a latitude where the characteristic varies more strongly, the almost linear region around 30º to 60º, where Portugal can give two good points (e.g. Porto - 37º and Faro - 41º). Mozambique can contribute with 27º (Maputo) and S. Tomé e Principe or Brazil are both good choices to cover the equator. Angola could give complementary points to those acquired in Brazil, as the sensibility of the measurement is more pronounced close to the equator and the poles.<br />
<br />
=Data fitting=<br />
Available references <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref> give a very good description of the mathematical model needed to fit the data. If all major factors are taken into account, gravity as a function of latitude is given by:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)]<br />
</math><br />
<br />
where \(\varphi\) is the latitude. This expression is one of the best experimental approximations and results from the standardization agreement to adjust the World Geodetic System datum surface (WSG84) to an ellipsoid with radius r<sub>1</sub>=6378137m at the equator and r<sub>2</sub>=6356752m polar semi-minor radius.<br />
This formula takes into account the fact that the Earth is an ellipsoid and that there is an additional increase in the acceleration of gravity when one moves nearer to the poles, due to a weaker centrifugal force. Nevertheless the students could derive a non-harmonic, first order approximation by taking into account only centrifugal force. Then, as a second step, they could include the two other major errors, the centrifugal force and earth’s ellipsoid format.<br />
<br />
[[File:Period_over_time.png|thumb|The variability of the period with elapsed time (angle amplitude < 7,5º), showing that this error is less than 0,05% regardless initial amplitude.]]<br />
<br />
The pictures shows the expected deviation from the “earth’s constant acceleration”, the real acceleration for each latitude. We have plotted the point already obtained with this apparatus in Lisbon and the marks over the expected latitudes for future partners.<br />
Of course these approximations do not include one important source of deviation from real data to the mathematical model, the experimental error, as we do not include the experimental source of error. However, those systematic errors could be under the expected precision needed (0,1%) for the former approximation if a careful design of the apparatus is considered. Nevertheless those errors must be discussed in advanced courses and their weight must be proved when considering the real pendulum.<br />
<br />
=Historical notes=<br />
The pendulum importance as the basis of clocks and chronographs was only overthrown when the Royal Society convinced the English parliament to create an award, ranging from 10k£ to 20k£ (equivalent nowadays to more than 3.5M€), for the invention of a chronograph that didn't depend on it. The time precision of pendulum based systems is only bettered by modern electronic systems.<br />
<br />
In the discovery age longitude was determined with a high error, since clocks and chronographs were reliant on pendulums and these were very sensitive to ships rocking, suffering changes in frequency or even stopping. Local longitude was calculated by comparing the solar hour (or stellar hour) with the ship's clock time.<br />
<br />
=References=<br />
<br />
<references /><br />
<br />
=Links=<br />
*[[Pêndulo Mundial | Portuguese version (Versão em Português)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Building your own pendulum]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=World_Pendulum&diff=2624World Pendulum2019-03-27T15:55:39Z<p>Ist165696: /* Experimental apparatus */</p>
<hr />
<div>=Description=<br />
[[File:Soyuz VS03 liftoff.jpg||thumb|Soyuz lift-off from French Guiana @ 5º north of the Equator .|right|border|236px]]<br />
Rockets are launched to space from equatorial latitudes. This is due to the fact that the apparent weight of objects is gradually reduced from the poles to the equator. We will feel lighter at the equator than at the poles!<br />
<br />
This small difference in apparent weight allows the same rocket to launch heavier payloads into orbit if launched nearer from the equator. For example, a Soyuz rocket launching into geostationary orbit from the French Guiana (5ºN) can carry 3 tons while it will only be capable of launching 1.7 tons of cargo when launched from Baikonur, Kazakhstan (46ºN).<br />
<br />
The goal of this experiment is to find the value of the gravity "constant" through a constellation of pendulums placed in various latitudes and remotely operated, through the internet, by anyone. <br />
<br />
It is expected that CPLP countries can contribute to this effort, bringing students, teachers and interested citizens closer together. <br />
<br />
There are two different activities occurring simultaneously: (i) access, through e-lab, of the pendulums located in different latitudes and (ii) the construction and [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 local operation in schools] with the support of the [http://fqnosecundario.ning.com/ FQ em Rede community].<br />
<br />
Lisboa, Ilhéus, Faro e Rio de Janeiro were the first cities to contribute to the network in January 2013, making it possible for the first fits of experimental data to the theoretical equation within our project that describes how gravity changes with latitude to occur.<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email]. <br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:420px"><br />
'''Links'''<br />
<div class="mw-collapsible-content"><br />
<br />
*Video Faro: rtsp://elabmc.ist.utl.pt/worldpendulum_ccvalg.sdp<br />
*Video Lisboa: rtsp://elabmc.ist.utl.pt/worldpendulum_planetarium.sdp<br />
*Video Ilhéus: rtsp://elabmc.ist.utl.pt/worldpendulum_ilheus.sdp<br />
*Video Rio Janeiro: rtsp://elabmc.ist.utl.pt/worldpendulum_puc.sdp<br />
*Video Maputo: rtsp://elabmc.ist.utl.pt/worldpendulum_maputo.sdp <br />
*Video São Tomé: rtsp://elabmc.ist.utl.pt/wp_saotome.sdp<br />
*Laboratory: Basic in [http://e-lab.ist.eu e-lab.ist.eu]<br />
*Control room: World Pendulum<br />
*Grade: *<br />
<br />
</div><br />
</div><br />
<br />
<br />
==Who likes this idea==<br />
<br />
[[File:PBA B1 1.png|border|180px|border|180px]]<br />
[[File:LogoSPF long.jpg|border|180px]]<br />
[[File:logo_EPS_blue.gif|border|80px]]<br />
[[File:Logo mar.png|border|80px]]<br />
[[File:LogoPlanetarioGulbenkian.png|border|180px]]<br />
[[File:LogoCCVALG.png|border|204px|border|180px]]<br />
[[File:LogoPlanetarioRioJaneiro.png|border|180px]]<br />
[[File:Logo info tech.png|border|180px]]<br />
[[File:Logo_tap.png|border|180px]]<br />
[[File:Cenfim Logo.jpg|border|180px]]<br />
[[File:LogoPUC.PNG|border|60px]]<br />
[[File:UESC BRASÃO ref.jpg|border|60px]]<br />
[[File:UFRPE.jpg|border|60px]]<br />
[[File:Logo_DGAE.png|border|380px]]<br />
[[File:LogosBeneficairesErasmus+RIGHT EN.jpg|border|280px]]<br />
<br />
=Experimental apparatus=<br />
The pendulem design used was based in Dr. Jodl's design<ref name="jodl">World pendulum—a distributed remotely controlled laboratory (RCL) to measure the Earth's gravitational acceleration depending on geographical latitude, Grober S, Vetter M, Eckert B and Jodl H J, European Journal of Physics - EUR J PHYS , vol. 28, no. 3, pp. 603-613, 2007</ref>. Some minor changes were made to allow the same design to be easily replicated in high schools. The data concerning each pendulum is as follows:<br />
<br />
[[File:WordlPendulum.JPG|thumb|Pendulum used for the world pendulum standard gravity experiment.]]<br />
[[File:Stringsuport.png|thumb|Pendulum string support to avoid elongation errors. The cable is fixed by soldering it into a brass M4 screw 40mm long.]]<br />
<br />
{| class="wikitable"<br />
!colspan="6"|Physical sizes by place<br />
|-<br />
| Place || Latitude || Longitude || Altitude (m) || String length (mm) || Sphere diameter (mm)<br />
|-<br />
| CCV_Alg/FARO || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| UESC/ILHÉUS || || || || 2705mm +/- 0.5mm || <br />
|-<br />
| LISBON || || || || 2677mm +/- 0.5mm || <br />
|-<br />
| MAPUTO || || || || 2609.8mm +/- 0.5mm @27ºC || <br />
|-<br />
| SÃO TOMÉ || || || || 2756.5mm +/- 0.5mm (r=40.9mm) || <br />
|-<br />
| CTU PRAGUE || 50º5.47N || 14º 24.97E || 150 || 2850 || 80.15<br />
|}<br />
<br />
{| class="wikitable"<br />
!colspan="2"|Typical quantities<br />
|-<br />
| String length (not counting the sphere) || 2705mm +/- 0.5mm<br />
|-<br />
| Sphere mass || 2kg +/- 75g<br />
|-<br />
| Sphere diameter || 81.2mm +/-1.5mm<br />
|-<br />
| String || Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm<br />
|-<br />
| Modulus of elasticity of string || ~200GPa<br />
|-<br />
| Oscillation period measurement system || Microprocessor with 7,3728MHz - 30ppm crystal<br />
+ laser + PIN photodiode<br />
|-<br />
| Wire CTE (25-500ºC)<br />
(Coefficient of thermal expansion) || ~14 x 10-6 K-1<br />
|}<br />
<br />
<!--<br />
<TABLE BORDER=1><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>String length (not counting the sphere)</P><br />
</TD><br />
<TD><br />
<P>Typical = 2705mm +/- 0.5mm</P><br />
</TD><br />
<TD><br />
<P>Typical = 2705mm +/- 0.5mm</P><br />
</TD><br />
</TR><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Real length CCV_Alg/FARO</P><br />
</TD><br />
<TD><br />
<P>2677mm +/- 0.5mm</P><br />
</TD><br />
</TR> <br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Real length UESC/ILHÉUS</P><br />
</TD><br />
<TD><br />
<P>2705mm +/- 0.5mm</P><br />
</TD><br />
</TR> <TR VALIGN=TOP><br />
<TD><br />
<P>Real length LISBON</P><br />
</TD><br />
<TD><br />
<P>2677mm +/- 0.5mm</P><br />
</TD><br />
</TR> <br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Real length MAPUTO</P><br />
</TD><br />
<TD><br />
<P>2609.8mm +/- 0.5mm @27ºC</P><br />
</TD><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Real length SÃO TOMÉ</P><br />
</TD><br />
<TD><br />
<P> 2756.5mm +/- 0.5mm (r=40.9mm)</P><br />
</TD><br />
</TR> <br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Sphere mass</P><br />
</TD><br />
<TD><br />
<P>2kg +/- 75g</P><br />
</TD><br />
</TR><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Sphere diameter</P><br />
</TD><br />
<TD><br />
<P>81.2mm +/-1.5mm</P><br />
</TD><br />
</TR><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>String</P><br />
</TD><br />
<TD><br />
<P>Remanium(r) - Stainless steel (Nickel chromium)<br />
- 0,4mm</P><br />
</TD><br />
</TR><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Modulus of elasticity of string</P><br />
</TD><br />
<TD><br />
<P>~200GPa</P><br />
</TD><br />
</TR><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Oscillation period measurement system</P><br />
</TD><br />
<TD><br />
<P>Micro processor with 7,3728MHz - 30ppm crystal<br />
+ laser + PIN photodiode</P><br />
</TD><br />
</TR><br />
<TR VALIGN=TOP><br />
<TD><br />
<P>Wire CTE (25-500&ordm;C)</P><br />
<P>(Coefficient of thermal expansion)</P><br />
</TD><br />
<TD><br />
<P>~14 x 10<SUP>-6</SUP> K<SUP>-1</SUP></P><br />
</TD><br />
</TR><br />
</TABLE><br />
--><br />
The experimental apparatus can be easily adapted to human operation, using a good chronometer, for local execution. The stainless steel structures can made in by brass or bronze for easier machining. The cable used can be replaced by a sport fishing steel cable and the mass can be replaced by a Olympic weight throw training weight, weighing 2Kg. A calibrated measuring tape should be used to measure the cable length, '''a few days after assembling the apparatus to allow for cable expansion'''.<br />
<br />
=Local partners=<br />
The pendulum<ref name="serway">Physics for scientists and engineers, 5th edition, Hardcourt College Publishers, R.Serway and R. Beichner, 2000</ref>, although one of the simplest systems commonly studied, is one of the richest in terms of physics.<br />
<br />
In order to build a precise pendulum the most important factors are the precise measurement of the length of the cable, its quality, and of that of the pendulum supports. Selecting a mass between 1 to 4 Kg ensures that the pendulum's period error will be small enough for small local gravity changes (smaller than 0.1%) to be detectable, as long as a precise chronometer is used for timekeeping. <br />
<br />
A local apparatus can be assembled using readily available materials and the local <em>"g"</em> values determined using such an apparatus can then be compared to the ones obtained through the remote pendulum constellation and the theoretical model.<br />
<br />
Collecting this data through a social network will allow a more precise description of how <em>"g"</em> varies around the globe. The "World Pendulum" can be an important collaborative network for the dissemination of physics in schools.<br />
<br />
Instructions on how to build such a pendulum are available in [[Precision Pendulum]].<br />
<br />
If you want to be a part of the World Pendulum newtork, please contact us by sending us an [mailto:wwwelab@ist.utl.pt email].<br />
<br />
=Physics=<br />
Determining gravity's acceleration in different parts of the globe raises questions about the importance of models in physics. It's possible to show that gravity's acceleration at sea level changes with latitude, and therefore a correction is needed for each individual location. This process allows us to demystify science and correct the existing "urban myth" around some physical constants that only are truly constant when some approximations are done. In this particular case, we will show how the introduction of successive corrections to gravity's "constant" will lead to values closer to those experimentally obtained. <br />
<br />
==Geophysical model==<br />
The starting point is the commonly used, constant, value of 9.81 ms<sup>-2</sup>. This is obtained by considering the Earth as being (i) a sphere (ii) that is not rotating. It's trivial to note that this model, due to the symmetry of the spherical form, does not allow for different values in different locations. This changes as soon as Earth's rotation dynamics and ellipsoid shape (flattening of the poles) are taken in account. These factors allow for gravity to change with latitude, and in fact these two factors are the two most important ones in this phenomena, outweighing every other effect, such as (i) altitude, (ii) tidal forces, and (iii) subsoil composition.<br />
<br />
To demonstrate these finer aspects, gravity's acceleration must be determined in various latitudes around the globe distant from each other. Using the data collected, students can then ask themselves about how "constant" the value truly is and improve their intuition of gravity.<br />
<br />
===Experimental studies===<br />
====Variation with latitude====<br />
As seen, the first possible study consists of using the remote pendulums to obtain a measurement of the local gravity acceleration for each location they're based in. Through considering (or not) several factors, it is possible to fit the data to a experimental description of the Earth using spherical harmonics (equation \eqref{harmonica-esferica}). This experimental work can be conducted using e-lab's pendulum constellation and [http://rcl-munich.informatik.unibw-muenchen.de/ our partner's pendulums].<br />
<br />
====Local determination====<br />
Following the instructions available in this wiki - [[Precision_Pendulum]] - or using any other kind of design that results in a rigorous apparatus, a local pendulum is built. It's then possible for measurements of local gravity to be made, as long as a good chronometer is used. Furthermore, it's also possible to contribute to the enrichment of the World Pendulum network's [https://docs.google.com/a/kic-innoenergy.com/spreadsheet/ccc?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE#gid=0 spreadsheet].<br />
<br />
====[[Tidal study]]====<br />
Using an almanac appropriate for the location, on can obtain the times of particular Moon/Sun alignments (full moon, new moon, waxing crescent and waxing gibbous). Plotting a graph spanning several months, one can try to verify and quantify the influence of tidal forces and Moon/Sun alignments in the apparent weight. It's possible to try and verify the correlation between Moon phases and changes in measurement of local gravity, by making a month or year-long study.<br />
Tidal effects are on the limit of detection by the pendulums of the e-lab constellation. For the experiment to be successful, it's necessary to be very rigorous on the time at which the experimental runs are made and some advanced numerical techniques, like the Fourier transform, need to by employed for the signal to be extracted from the data.<br />
<br />
====Analysis of wire torsion ====<br />
[[File:Torcao.jpg||thumb|Effect of wire torsion and sphere ellipticity in the measurement of pendulum speed.|right|border|240px]]<br />
Those paying more attention will note that the speed of the mass changes due to wire torsion and due to the mass not being a perfect sphere. This is pictured in the image to the right. The pendulum can be studied taking into account the effect of the wire torsion (the use of Euler-Lagrange equations is recommended for this).<br />
<br />
==Uniformly accelerated circular movement==<br />
The speed of the sphere in the lowest point of the trajectory is determined by measuring how much time the laser beam is interrupted. Knowing the sphere diameter, it's trivial to determine the speed at the origin. From this, the maximum kinetic energy can be calculated and the launching height of the pendulum determined. The calculated launching point can then be compared with the real one.<br />
<br />
=CPLP as “latitude provider”=<br />
<br />
[[file:G_latitude.png|link=https://docs.google.com/a/kic-innoenergy.com/spreadsheet/oimg?key=0AkxMmuJA92wgdHZnWHk5WHhaQldINGFqSTl6OGdpSlE&oid=1&zx=hfmrs4egtbuf|thumb|The gravitational constant plotted against latitude with points of interest around the globe highlighted. Principe Island is just over zero latitude. Lisbon value was obtained with the current experiment and already over plotted on the graphic.]]<br />
<br />
Language is an important nationality factor ("My fatherland is the Portuguese language.", F. Pessoa) and a simple way to define what is called brother countries ("países irmãos"). Only four languages are disseminated around the world, Portuguese being one of them. The Portuguese speaking community covers latitudes from ~30S to ~40N, almost a 75º span across the equator. Therefore, CPLP countries can help by being "latitude providers" (see Figure).<br />
<br />
To conduct this world experiment, at least four spaced points are needed in order to have a proper fit. But due to the strong non-linearity of the equation, more points are needed to provide a suitable adjustment, in particular on the "knee" close to the earth’s equator. Brazil itself can provide almost four crucial points close to the equator (e.g. Recife 8º, Salvador – 12º, Rio de Janeiro – 23º, Porto Alegre – 30º) but lacks points with a latitude where the characteristic varies more strongly, the almost linear region around 30º to 60º, where Portugal can give two good points (e.g. Porto - 37º and Faro - 41º). Mozambique can contribute with 27º (Maputo) and S. Tomé e Principe or Brazil are both good choices to cover the equator. Angola could give complementary points to those acquired in Brazil, as the sensibility of the measurement is more pronounced close to the equator and the poles.<br />
<br />
=Data fitting=<br />
Available references <ref name="serway"></ref> <ref name="rcl">http://rcl-munich.informatik.unibw-muenchen.de/</ref> <ref name="olsom">Nelson, Robert; M. G. Olsson (February 1987). "The pendulum - Rich physics from a simple system". American Journal of Physics 54 (2):<br />
doi:10.1119/1.14703</ref> <ref name="gauld">Pendulums in the Physics Education Literature: A Bibliography, Gauld, Colin 2004 Science & Education, issue 7, volume 13, 811-832<br />
(http://dx.doi.org/10.1007/s11191-004-9508-7)</ref> <ref name="qureshi">The exact equation of motion of a simple pendulum of arbitrary amplitude: a hypergeometric approach, M I Qureshi et al 2010 Eur. J. Phys. 31 1485(http://dx.doi.org/10.1088/0143-0807/31/6/014)</ref> <ref name="ochs"> A comprehensive analytical solution of the nonlinear pendulum, Karlheinz Ochs 2011 Eur. J. Phys. 32 479 (http://dx.doi.org/10.1088/0143-0807/32/2/019)</ref> give a very good description of the mathematical model needed to fit the data. If all major factors are taken into account, gravity as a function of latitude is given by:<br />
<br />
<math><br />
g_{n}(\varphi) = 9.780 326 772\times[1 + 0.005 302 33 \cdot sin^{2}(\varphi) - 0.000 005 89 \cdot sin^{2}(2\varphi)]<br />
</math><br />
<br />
where \(\varphi\) is the latitude. This expression is one of the best experimental approximations and results from the standardization agreement to adjust the World Geodetic System datum surface (WSG84) to an ellipsoid with radius r<sub>1</sub>=6378137m at the equator and r<sub>2</sub>=6356752m polar semi-minor radius.<br />
This formula takes into account the fact that the Earth is an ellipsoid and that there is an additional increase in the acceleration of gravity when one moves nearer to the poles, due to a weaker centrifugal force. Nevertheless the students could derive a non-harmonic, first order approximation by taking into account only centrifugal force. Then, as a second step, they could include the two other major errors, the centrifugal force and earth’s ellipsoid format.<br />
<br />
[[File:Period_over_time.png|thumb|The variability of the period with elapsed time (angle amplitude < 7,5º), showing that this error is less than 0,05% regardless initial amplitude.]]<br />
<br />
The pictures shows the expected deviation from the “earth’s constant acceleration”, the real acceleration for each latitude. We have plotted the point already obtained with this apparatus in Lisbon and the marks over the expected latitudes for future partners.<br />
Of course these approximations do not include one important source of deviation from real data to the mathematical model, the experimental error, as we do not include the experimental source of error. However, those systematic errors could be under the expected precision needed (0,1%) for the former approximation if a careful design of the apparatus is considered. Nevertheless those errors must be discussed in advanced courses and their weight must be proved when considering the real pendulum.<br />
<br />
=Historical notes=<br />
The pendulum importance as the basis of clocks and chronographs was only overthrown when the Royal Society convinced the English parliament to create an award, ranging from 10k£ to 20k£ (equivalent nowadays to more than 3.5M€), for the invention of a chronograph that didn't depend on it. The time precision of pendulum based systems is only bettered by modern electronic systems.<br />
<br />
In the discovery age longitude was determined with a high error, since clocks and chronographs were reliant on pendulums and these were very sensitive to ships rocking, suffering changes in frequency or even stopping. Local longitude was calculated by comparing the solar hour (or stellar hour) with the ship's clock time.<br />
<br />
=References=<br />
<br />
<references /><br />
<br />
=Links=<br />
*[[Pêndulo Mundial | Portuguese version (Versão em Português)]]<br />
*[https://www.youtube.com/watch?v=ZOOFw_Nlee8&feature=youtu.be Building your own pendulum]</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Hall_of_fame&diff=2618Hall of fame2019-03-26T16:05:17Z<p>Ist165696: /* Samuel Balula */</p>
<hr />
<div><!-- ==e-lab geeks== --><br />
On this page, we try to collect all nerd contributors to e-lab who have helped in any way to put this project in shape and try to digest their own personal interests.<br />
<br />
==Horácio Fernandes==<br />
[[File:Horacio.png||right|160px]]<br />
Presently I'm an associate professor of the IST's physics department, teaching Micro-controllers, Real-time Control and Electronic and Optics Instrumentation as main courses, besides general physics.<br />
<br />
I've created e-lab in the past as an incentive for master students to develop their studies in electronic instrumentation which some of them succeed in publish it as their Master Thesis. By that time I didn't know that this field of science would become what is known presently by IoT.<br />
<br />
My scientific research is focused on nuclear fusion devices specifically on (i) diagnostics, (ii) real-time control and (iii) tokamak operation.<br />
<br />
==José Pedro Pereira==<br />
<!-- e-lab --><br />
<br />
==Ivo Carvalho==<br />
<!--Thompson--><br />
[[File:Ivo biopic.jpg||right|160px]]<br />
Ivo Carvalho received the B.S., M.S. and Ph.D. degrees in physics engineering from Instituto Superior Tecnico, Portugal, in 2004, 2008 and 2013, respectively. As an e-lab collaborator, he developed the Remote Thomson experiment. His scientific research started in 2004 in the real-time control and data acquisition area and with time his scientific interests expanded to the areas of machine operation and discharge performance optimisation. Some scientific highlights include the extension of the ISTTOK tokamak alternate current discharges beyond one second of operation and the operation the JET tokamak as fully qualified session leader. He is a member of the JET plasma operations group since 2014 as a secondee from IST. (last updated March/2019)<br />
<br />
==João Fortunato==<br />
<!-- montes de experiencias / dsPicnodes / etc etc --><br />
<br />
==Leonardo Pedro==<br />
<!--dsPIC migration--><br />
<br />
==Joao Figueiredo==<br />
<br />
==Pedro Carvalho==<br />
<!--Dice statistics--><br />
[[File:Pcarvalho_biopic.png||right|160px]]<br />
Got my PhD on Fast Tomographic Algorithms for Real-Time Applications at IPFN, with application to ISTTOK and currently (2018) working at JET as Responsible Officer for the Bolometer system and Tomography processing and validation. I have worked on the implementation of the Infra-red protection camera system for the ITER-like Wall (ILW) at JET and have become an expert Operator of this System, participating in most JET experimental campaigns since the ILW was installed. I have also been involved with the development of a program that processed FM Microwave Reflectometry data to produce electron density profiles at JET and ASDEX-Upgrade; and was a part of the team that implemented the interface between ASDEX's real-time control software and the lower plant level, MARTe framework that is planned to operate on some control systems at ITER. Had also a collaboration in tomography algorithms for Wendelstein7-X and fast camera image analysis at TJ-II. <br />
Developed the Aleatorio experiment during e-lab's first few years, as the thesis of the Graduate Degree in Physics Engineering. It consists of an apparatus that shuffles some dice and takes a picture of the result and then counts the spots, gathering statistics with every throw.<br />
<br />
==André Neto==<br />
<br />
==Josué Lopes==<br />
<br />
==Tiago Pereira==<br />
<!--Pinhole e pendulos e tudo e tudo e tudo --><br />
<br />
==Hugo Alves==<br />
<!-- assador de castanhas e o mag3d --><br />
<br />
==Rafael Henriques==<br />
<!--Optic+Scuba + REC--><br />
<br />
==André Duarte==<br />
<!--Physics pendulum--><br />
<br />
==João Loureiro==<br />
[[File:photo-joao1.png||right|160px]]<br />
A native of Lisbon, João studied at IST where he got the MSc Degree in Engineering Physics. He has always had a strong interest in experimental physics, and in particular in plasmas and fusion. This eventually became his field of work when he started collaborating with e-lab during his BSc degree. What started as course's final project, evolved into a master project where two Plasma-themed e-lab experiments where developed: Langmuir probe and the Paschen Curve experiments.<br />
When he's not maintaining the Langmuir probe experiment he is working with magnetically confined nuclear fusion devices in IPFN in the context of his PhD.<br />
<br />
==Rui Figueiredo==<br />
<!--WordPress + Wiki--><br />
<br />
==Ruben Marques==<br />
<!--Angular momentum--><br />
<br />
==Samuel Balula==<br />
<!--Colisione<br />
Eu colaborei entre 2012 e 2016, tendo participado nas seguintes<br />
experiências:<br />
- pêndulo mundial<br />
- colisão elástica (colisione)<br />
- lei de hook (mola)<br />
- hidroestática<br />
<br />
código:<br />
e-lab’s rec generic driver for arduino<br />
<br />
Quanto a artigos, o mais facil é veres aqui:<br />
https://orcid.org/0000-0002-7384-3848<br />
--><br />
[[File:foto_Samuel_Balula.jpg||right|160px]]<br />
<br />
==Pedro Black==<br />
<br />
==Miguel Batista==<br />
<br />
==Manuel Santos==<br />
<br />
==Ruben Valentim Cardoso==<br />
<br />
==Rui Dias==</div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=File:Foto_Samuel_Balula.jpg&diff=2616File:Foto Samuel Balula.jpg2019-03-26T16:03:55Z<p>Ist165696: </p>
<hr />
<div></div>Ist165696https://www.elab.tecnico.ulisboa.pt/wiki/index.php?title=Hall_of_fame&diff=2614Hall of fame2019-03-26T16:03:32Z<p>Ist165696: /* Samuel Balula */</p>
<hr />
<div><!-- ==e-lab geeks== --><br />
On this page, we try to collect all nerd contributors to e-lab who have helped in any way to put this project in shape and try to digest their own personal interests.<br />
<br />
==Horácio Fernandes==<br />
[[File:Horacio.png||right|160px]]<br />
Presently I'm an associate professor of the IST's physics department, teaching Micro-controllers, Real-time Control and Electronic and Optics Instrumentation as main courses, besides general physics.<br />
<br />
I've created e-lab in the past as an incentive for master students to develop their studies in electronic instrumentation which some of them succeed in publish it as their Master Thesis. By that time I didn't know that this field of science would become what is known presently by IoT.<br />
<br />
My scientific research is focused on nuclear fusion devices specifically on (i) diagnostics, (ii) real-time control and (iii) tokamak operation.<br />
<br />
==José Pedro Pereira==<br />
<!-- e-lab --><br />
<br />
==Ivo Carvalho==<br />
<!--Thompson--><br />
[[File:Ivo biopic.jpg||right|160px]]<br />
Ivo Carvalho received the B.S., M.S. and Ph.D. degrees in physics engineering from Instituto Superior Tecnico, Portugal, in 2004, 2008 and 2013, respectively. As an e-lab collaborator, he developed the Remote Thomson experiment. His scientific research started in 2004 in the real-time control and data acquisition area and with time his scientific interests expanded to the areas of machine operation and discharge performance optimisation. Some scientific highlights include the extension of the ISTTOK tokamak alternate current discharges beyond one second of operation and the operation the JET tokamak as fully qualified session leader. He is a member of the JET plasma operations group since 2014 as a secondee from IST. (last updated March/2019)<br />
<br />
==João Fortunato==<br />
<!-- montes de experiencias / dsPicnodes / etc etc --><br />
<br />
==Leonardo Pedro==<br />
<!--dsPIC migration--><br />
<br />
==Joao Figueiredo==<br />
<br />
==Pedro Carvalho==<br />
<!--Dice statistics--><br />
[[File:Pcarvalho_biopic.png||right|160px]]<br />
Got my PhD on Fast Tomographic Algorithms for Real-Time Applications at IPFN, with application to ISTTOK and currently (2018) working at JET as Responsible Officer for the Bolometer system and Tomography processing and validation. I have worked on the implementation of the Infra-red protection camera system for the ITER-like Wall (ILW) at JET and have become an expert Operator of this System, participating in most JET experimental campaigns since the ILW was installed. I have also been involved with the development of a program that processed FM Microwave Reflectometry data to produce electron density profiles at JET and ASDEX-Upgrade; and was a part of the team that implemented the interface between ASDEX's real-time control software and the lower plant level, MARTe framework that is planned to operate on some control systems at ITER. Had also a collaboration in tomography algorithms for Wendelstein7-X and fast camera image analysis at TJ-II. <br />
Developed the Aleatorio experiment during e-lab's first few years, as the thesis of the Graduate Degree in Physics Engineering. It consists of an apparatus that shuffles some dice and takes a picture of the result and then counts the spots, gathering statistics with every throw.<br />
<br />
==André Neto==<br />
<br />
==Josué Lopes==<br />
<br />
==Tiago Pereira==<br />
<!--Pinhole e pendulos e tudo e tudo e tudo --><br />
<br />
==Hugo Alves==<br />
<!-- assador de castanhas e o mag3d --><br />
<br />
==Rafael Henriques==<br />
<!--Optic+Scuba + REC--><br />
<br />
==André Duarte==<br />
<!--Physics pendulum--><br />
<br />
==João Loureiro==<br />
[[File:photo-joao1.png||right|160px]]<br />
A native of Lisbon, João studied at IST where he got the MSc Degree in Engineering Physics. He has always had a strong interest in experimental physics, and in particular in plasmas and fusion. This eventually became his field of work when he started collaborating with e-lab during his BSc degree. What started as course's final project, evolved into a master project where two Plasma-themed e-lab experiments where developed: Langmuir probe and the Paschen Curve experiments.<br />
When he's not maintaining the Langmuir probe experiment he is working with magnetically confined nuclear fusion devices in IPFN in the context of his PhD.<br />
<br />
==Rui Figueiredo==<br />
<!--WordPress + Wiki--><br />
<br />
==Ruben Marques==<br />
<!--Angular momentum--><br />
<br />
==Samuel Balula==<br />
<!--Colisione--><br />
[[File:foto_Samuel_Balula.jpg||right|160px]]<br />
<br />
==Pedro Black==<br />
<br />
==Miguel Batista==<br />
<br />
==Manuel Santos==<br />
<br />
==Ruben Valentim Cardoso==<br />
<br />
==Rui Dias==</div>Ist165696